温馨提示×

java中怎么使用zipfile压缩文件

小亿
92
2024-04-08 15:40:39
栏目: 编程语言

在Java中使用ZipFile类可以实现对文件的压缩和解压缩操作。下面是一个简单的示例代码,展示了如何使用ZipFile类来压缩文件:

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;

public class ZipFileExample {

    public static void main(String[] args) {
        String sourceFile = "input.txt";
        String zipFile = "output.zip";
        
        zipFile(sourceFile, zipFile);
    }

    public static void zipFile(String sourceFile, String zipFile) {
        try (FileOutputStream fos = new FileOutputStream(zipFile);
             ZipOutputStream zos = new ZipOutputStream(fos);
             FileInputStream fis = new FileInputStream(sourceFile)) {
            
            ZipEntry zipEntry = new ZipEntry(new File(sourceFile).getName());
            zos.putNextEntry(zipEntry);
            
            byte[] buffer = new byte[1024];
            int length;
            while ((length = fis.read(buffer)) > 0) {
                zos.write(buffer, 0, length);
            }
            
            zos.closeEntry();
            
            System.out.println("File compressed successfully");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

在上面的示例代码中,首先创建了一个ZipOutputStream对象,该对象用于将数据写入到压缩文件中。然后创建一个ZipEntry对象,用于表示要压缩的文件。接着读取源文件的数据并写入到压缩文件中。最后关闭ZipEntry和ZipOutputStream对象,完成文件的压缩操作。

0