如何在 Java 中解压文件?
javaobject oriented programmingprogramming
Java 提供了一个名为 InflaterInputStream 的类,该类用于解压压缩文件。
该类的 read() 方法从输入流中读取单个字节的压缩数据。使用此方法 − 解压压缩文件
- 创建一个 FileInputStream 对象,绕过压缩文件的路径(字符串格式),作为其构造函数的参数。
- 创建一个 FileOutputStream 对象,绕过输出文件(未压缩的图像文件)的路径(字符串格式),作为其构造函数的参数。
- 创建一个 InflaterInputStream 对象,绕过上面创建的 FileOutputStream 对象,作为其构造函数的参数。
- 然后,读取 InflaterInputStream 对象的内容并使用 FileOutputStream 类的 write() 方法写入。
示例
import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.util.zip.InflaterInputStream; public class DeCompressingFiles { public static void main(String args[]) throws IOException { StringinputPath ="D:\ExampleDirectory\compressed.txt"; //实例化 FileInputStream FileInputStream inputStream = new FileInputStream(inputPath); String outputpath = "D:\ExampleDirectory\output.jpg"; FileOutputStream outputStream = new FileOutputStream(outputpath); InflaterInputStream decompresser = new InflaterInputStream(inputStream); int content; while ((contents=decompresser.read())!=-1){ outputStream.write(contents); } //关闭文件 outputStream.close(); decompresser.close(); System.out.println("File un-compressed......."); } }
输出
File un-compressed.......