Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

java文件压缩成zip

作者:メ可遇不可求   发布日期:2026-03-18   浏览:81

import java.io.*;
import java.util.zip.*;

public class ZipFiles {
    public static void main(String[] args) {
        String sourceFile = "example.txt"; // 要压缩的文件路径
        String zipFilePath = "example.zip"; // 压缩后的ZIP文件路径

        try {
            FileOutputStream fos = new FileOutputStream(zipFilePath);
            ZipOutputStream zos = new ZipOutputStream(fos);

            File fileToZip = new File(sourceFile);
            FileInputStream fis = new FileInputStream(fileToZip);
            ZipEntry zipEntry = new ZipEntry(fileToZip.getName());
            zos.putNextEntry(zipEntry);

            byte[] bytes = new byte[1024];
            int length;
            while ((length = fis.read(bytes)) >= 0) {
                zos.write(bytes, 0, length);
            }

            zos.closeEntry();
            fis.close();
            zos.close();
            fos.close();

            System.out.println("文件已成功压缩为: " + zipFilePath);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

解释说明:

  1. 导入必要的包java.io.*java.util.zip.* 提供了处理文件和创建ZIP文件所需的功能。
  2. 定义要压缩的文件路径和目标ZIP文件路径sourceFile 是要压缩的文件,zipFilePath 是生成的ZIP文件。
  3. 创建输出流:使用 FileOutputStream 将数据写入到指定的ZIP文件中,并通过 ZipOutputStream 创建一个ZIP文件输出流。
  4. 读取源文件并写入ZIP文件:使用 FileInputStream 读取源文件的内容,并将其写入到ZIP文件中。
  5. 关闭资源:确保所有打开的流都正确关闭以避免资源泄漏。
  6. 异常处理:捕获可能发生的 IOException 并打印堆栈跟踪信息。

如果需要压缩多个文件或目录,可以在代码中添加循环或递归逻辑来处理。

上一篇:java 去重

下一篇:java iterable

大家都在看

java url decode

java判断是windows还是linux

java连接数据库的代码

java date类型比较大小

java djl

ubuntu 卸载java

es java api

java list 查找

java 解压rar

java读取excel中的图片

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站