相关疑难解决方法(0)

GZIPInputStream逐行读取

我有一个.gz格式的文件.用于读取此文件的java类是GZIPInputStream.但是,此类不会扩展Java的BufferedReader类.结果,我无法逐行读取文件.我需要这样的东西

reader  = new MyGZInputStream( some constructor of GZInputStream) 
reader.readLine()...
Run Code Online (Sandbox Code Playgroud)

我创建了我的类,它扩展了Java的Reader或BufferedReader类,并使用GZIPInputStream作为其变量之一.

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.Reader;
import java.util.zip.GZIPInputStream;

public class MyGZFilReader extends Reader {

    private GZIPInputStream gzipInputStream = null;
    char[] buf = new char[1024];

    @Override
    public void close() throws IOException {
        gzipInputStream.close();
    }

    public MyGZFilReader(String filename)
               throws FileNotFoundException, IOException {
        gzipInputStream = new GZIPInputStream(new FileInputStream(filename));
    }

    @Override
    public int read(char[] cbuf, int off, int len) throws IOException {
        // TODO Auto-generated method stub
        return gzipInputStream.read((byte[])buf, …
Run Code Online (Sandbox Code Playgroud)

java file-io filereader gzipinputstream

77
推荐指数
2
解决办法
9万
查看次数

标签 统计

file-io ×1

filereader ×1

gzipinputstream ×1

java ×1