📜  Java DeflaterOutputStream和InflaterInputStream类

📅  最后修改于: 2020-09-27 08:16:25             🧑  作者: Mango

DeflaterOutputStream和InflaterInputStream类

DeflaterOutputStream和InflaterInputStream类提供了以deflate压缩格式压缩和解压缩数据的机制。

DeflaterOutputStream类

DeflaterOutputStream类用于以deflate压缩格式压缩数据。它为其他压缩过滤器(例如GZIPOutputStream)提供了便利。

使用DeflaterOutputStream类压缩文件的示例

在此示例中,我们正在使用DeflaterOutputStream类读取文件的数据并将其压缩为另一个文件。您可以压缩任何文件,这里我们正在压缩Deflater.java文件

import java.io.*;
import java.util.zip.*;
class Compress{
public static void main(String args[]){
try{
FileInputStream fin=new FileInputStream("Deflater.java");
FileOutputStream fout=new FileOutputStream("def.txt");
DeflaterOutputStream out=new DeflaterOutputStream(fout);

int i;
while((i=fin.read())!=-1){
out.write((byte)i);
out.flush();
}
fin.close();
out.close();
}catch(Exception e){System.out.println(e);}
System.out.println("rest of the code");
}
}

InflaterInputStream类

InflaterInputStream类用于以deflate压缩格式对文件进行解压缩。它为其他解压缩过滤器(例如GZIPInputStream类)提供了便利。

使用InflaterInputStream类解压缩文件的示例

在此示例中,我们将压缩文件def.txt解压缩为D.java。


import java.io.*;
import java.util.zip.*;
class DeCompress{
public static void main(String args[]){
try{
FileInputStream fin=new FileInputStream("def.txt");
InflaterInputStream in=new InflaterInputStream(fin);
FileOutputStream fout=new FileOutputStream("D.java");

int i;
while((i=in.read())!=-1){
fout.write((byte)i);
fout.flush();
}
fin.close();
fout.close();
in.close();
}catch(Exception e){System.out.println(e);}
System.out.println("rest of the code");
}
}