Java 中的 Java.util.zip.GZIPInputStream 类
原文:https://www . geesforgeks . org/Java-util-zip-gzipinputstream-class-Java/
这个类实现了一个流过滤器,用于读取 GZIP 文件格式的压缩数据。
施工人员
- GZipInputStream(InputStream in):使用默认缓冲区大小创建新的输入流。
- GZipInputStream(InputStream in,int size) : 用指定的缓冲区大小创建新的输入流。
方法:
-
void close() : 关闭此输入流并释放与该流相关联的任何系统资源。
java Syntax :public void close() throws IOException Specified by: close in interface Closeable Specified by: close in interface AutoCloseable Overrides: close in class InflaterInputStream Throws: IOException
-
int read(byte[] buf,int off,int len) : 将未压缩的数据读入字节数组。如果 len 不为零,该方法将阻塞,直到某些输入可以解压缩;否则,不读取字节,返回 0。
java Syntax :public int read(byte[] buf, int off, int len) throws IOException Overrides: read in class InflaterInputStream Parameters: buf - the buffer into which the data is read off - the start offset in the destination array b len - the maximum number of bytes read Returns: the actual number of bytes read, or -1 if the end of the compressed input stream is reached Throws: NullPointerException IndexOutOfBoundsException ZipException IOException
从类 Java . util . zip . influgerinputstream 继承的方法 可用、填充、标记、标记支持、读取、重置、跳过 从类 java.io.FilterInputStream 继承的方法 读取 从类 java.lang.Object 继承的方法 克隆、等于、finalize、getClass、hashCode、notifyAll、toString、等待、等待
程序:
//Java program demonstrating GZipInputStream methods
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Arrays;
import java.util.zip.GZIPInputStream;
class GZipInputStreamDemo
{
public static void main(String[] args) throws IOException
{
FileInputStream fis = new FileInputStream("file.txt");
GZIPInputStream gzis = new GZIPInputStream(fis);
//Uncompressed FileContents
//01234567890
byte b[]=new byte[10];
//skipping 1 byte
gzis.skip(1);
//illustrating available() and
//read(byte b[],int off,int len)
if( gzis.available()!=-1)
gzis.read(b);
System.out.println(Arrays.toString(b));
//closing the stream
gzis.close();
}
}
输出:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
本文由 尼尚·夏尔马 供稿。如果你喜欢 GeeksforGeeks 并想投稿,你也可以使用contribute.geeksforgeeks.org写一篇文章或者把你的文章邮寄到 contribute@geeksforgeeks.org。看到你的文章出现在极客博客主页上,帮助其他极客。
如果你发现任何不正确的地方,或者你想分享更多关于上面讨论的话题的信息,请写评论。
版权属于:月萌API www.moonapi.com,转载请注明出处