getInputStream()函數是java.util.zip軟件包的一部分。該函數返回作為參數傳遞的特定ZipEntry的InputStream。關閉Zip文件也將關閉此函數生成的所有InputStream。函數簽名:
public InputStream getInputStream(ZipEntry e)
用法:
zip_file.getInputStream(entry);
參數:該函數將ZipEntry對象作為參數。
返回值:該函數返回一個InputStream對象,以讀取ZipFile條目的內容。
Exceptions:
- 如果zip文件已關閉,該函數將拋出IllegalStateException
- 如果發生ZIP格式錯誤,該函數將引發ZipException
- 如果發生I /O錯誤,該函數將引發IOException
以下示例程序旨在說明getInputStream()函數的使用
範例1:我們將創建一個名為zip_file的文件,並使用getEntry()函數獲取zip文件條目,然後獲取Input Stream對象以讀取文件內容。“ file.zip”是f:目錄中的一個zip文件。
// Java program to demonstrate the
// use of getInputStream() function
import java.util.zip.*;
import java.util.Enumeration;
import java.util.*;
import java.io.*;
public class solution {
public static void main(String args[])
{
try {
// Create a Zip File
ZipFile zip_file = new ZipFile("f:\\file.zip");
// get the Zip Entry using
// the getEntry() function
ZipEntry entry = zip_file.getEntry("file1.cpp");
// get the Input Stream
// using the getInputStream()
// function
InputStream input = zip_file.getInputStream(entry);
// Create a scanner object
Scanner sc = new Scanner(input);
System.out.println("Contents:");
// Display the contents Zip Entry
while (sc.hasNext()) {
System.out.println(sc.nextLine());
}
// Close the scanner
sc.close();
}
catch (Exception e) {
System.out.println(e.getMessage());
}
}
}
輸出:
Contents: This is a file in ZIP file.
範例2:我們將創建一個名為zip_file的文件,並使用getEntry()函數獲取zip文件條目,然後獲取Input Stream對象以讀取文件內容。zip文件中不存在“ file4.cpp”。
// Java program to demonstrate the
// use of getInputStream() function
import java.util.zip.*;
import java.util.Enumeration;
import java.util.*;
import java.io.*;
public class solution {
public static void main(String args[])
{
try {
// Create a Zip File
ZipFile zip_file = new ZipFile("f:\\file.zip");
// get the Zip Entry using
// the getEntry() function
ZipEntry entry = zip_file.getEntry("file4.cpp");
// Get the Input Stream
// using the getInputStream()
// function
InputStream input = zip_file.getInputStream(entry);
// Create a scanner object
Scanner sc = new Scanner(input);
System.out.println("Contents:");
// Display the contents Zip Entry
while (sc.hasNext()) {
System.out.println(sc.nextLine());
}
// Close the scanner
sc.close();
}
catch (Exception e) {
System.out.println(e.getMessage());
}
}
}
輸出:
null
該函數引發錯誤。
相關用法
- Java ZipFile size()用法及代碼示例
- Java ZipFile getEntry()用法及代碼示例
- Java ZipFile getComment()用法及代碼示例
- Java ZipFile getName()用法及代碼示例
- Java ZipFile entries()用法及代碼示例
- Java Java.util.function.BiPredicate用法及代碼示例
- Java Java.util.function.DoublePredicate用法及代碼示例
- Java Java.util.function.LongPredicate用法及代碼示例
- Java Java.util.function.IntPredicate用法及代碼示例
- Java SQL Timestamp after()用法及代碼示例
- Java Function Interface用法及代碼示例
- Java SQL Timestamp before()用法及代碼示例
- Java SQL Timestamp setTime()用法及代碼示例
- Java ZipEntry setCrc()用法及代碼示例
- Java ZipEntry setCreationTime()用法及代碼示例
注:本文由純淨天空篩選整理自andrew1234大神的英文原創作品 Java ZipFile getInputStream() function with examples。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。