Java GZIPInputStream教程
时间:2020-01-09 10:36:33 来源:igfitidea点击:
JavaGZIPInputStream
类(java.util.zip.GZIPInputStream
)可用于解压缩使用GZIP压缩算法压缩的文件,例如通过GZIPOutputStream
类。
创建一个GZIPInputStream
要使用Java的GZIPInputStream,必须首先创建一个GZIPInputStream实例。这是创建GZIPInputStream
实例的示例:
InputStream fileInputStream = new FileInputStream("myfile.zip"); GZIPInputStream gzipInputStream = new GZIPInputStream(fileInputStream);
GZIPInputStream构造函数将InputStream作为参数。在上面的示例中,我通过了一个名为FileInputStream的文件,该文件连接到名为myfile.zip的文件。然后," GZIPInputStream"将读取文件中经过GZIP处理的数据并将其解压缩。
从GZIPInputStream读取数据
创建了" GZIPInputStream"之后,我们可以从中读取解压缩的数据,就像从任何其他" InputStream"中读取数据一样。这是从Java GZIPInputStream读取数据的示例:
int data = gzipInputStream.read(); while(data != -1){ //do something with data data = gzipInputStream.read(); }
关闭GZIPInputStream
从" GZIPInputStream"读取完数据后,应使用" close()"方法将其关闭。这是关闭GZIPInputStream
的Java示例:
gzipInputStream.close();
我们还可以使用try-with-resources构造打开GZIPInputStream,因此在使用完GZIPInputStream后会自动将其关闭。看起来是这样的:
try(GZIPInputStream gzipInputStream = new GZIPInputStream(new FileInputStream("myfile.zip"))) { int data = gzipInputStream.read(); while(data != -1){ //do something with data data = gzipInputStream.read(); } }