怎么使用GZIPOutputStream将数组对象写进文件中
时间: 2024-01-17 07:05:37 浏览: 66
首先,你需要创建一个 `GZIPOutputStream` 对象,然后将其包装在一个 `BufferedOutputStream` 对象中,用于缓冲写入。接着,将数组对象写入 `BufferedOutputStream` 对象中,最后关闭流即可。
以下是示例代码:
```java
import java.io.*;
import java.util.zip.GZIPOutputStream;
public class Main {
public static void main(String[] args) {
int[] array = {1, 2, 3, 4, 5};
try {
FileOutputStream fos = new FileOutputStream("array.gz");
BufferedOutputStream bos = new BufferedOutputStream(fos);
GZIPOutputStream gos = new GZIPOutputStream(bos);
ObjectOutputStream oos = new ObjectOutputStream(gos);
oos.writeObject(array);
oos.flush();
oos.close();
gos.close();
bos.close();
fos.close();
System.out.println("Array object has been written to file.");
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
在上面的示例代码中,我们通过 `ObjectOutputStream` 将数组对象写入到 `GZIPOutputStream` 中,实现了数据的压缩和写入。注意,这里的数组对象必须是可序列化的。
阅读全文