GZIPInputStream 逐行读取数据
时间: 2023-07-27 08:12:59 浏览: 190
GZIPInputStream 是 Java 中用于解压缩 GZIP 文件格式的类。它可以读取 GZIP 压缩过的数据,并将其解压缩成原始数据。
要逐行读取 GZIPInputStream 中的数据,您可以使用 BufferedReader 类来包装 GZIPInputStream,然后使用 BufferedReader 的 readLine() 方法逐行读取数据。
以下是一个示例代码:
```
try {
FileInputStream fileIn = new FileInputStream("data.gz");
GZIPInputStream gzipIn = new GZIPInputStream(fileIn);
BufferedReader reader = new BufferedReader(new InputStreamReader(gzipIn));
String line;
while ((line = reader.readLine()) != null) {
// 处理每一行数据
System.out.println(line);
}
reader.close();
gzipIn.close();
fileIn.close();
} catch (IOException e) {
e.printStackTrace();
}
```
在上面的代码中,我们首先创建了一个 FileInputStream 对象来读取 GZIP 文件。然后,我们创建了一个 GZIPInputStream 对象来解压缩文件。接下来,我们使用 BufferedReader 类来包装 GZIPInputStream,并使用 readLine() 方法逐行读取数据。
最后,记得关闭所有打开的流对象,以释放资源。
阅读全文