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

java zip压缩

作者:佳凝皓月   发布日期:2025-10-02   浏览:102

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

public class ZipExample {

    // 将文件压缩为ZIP格式
    public static void zipFile(String filePath, String zipFilePath) {
        try {
            // 创建文件输入流
            FileInputStream fis = new FileInputStream(filePath);
            // 创建文件输出流
            FileOutputStream fos = new FileOutputStream(zipFilePath);
            // 创建ZIP输出流
            ZipOutputStream zos = new ZipOutputStream(fos);

            // 创建ZIP条目
            ZipEntry zipEntry = new ZipEntry(new File(filePath).getName());
            zos.putNextEntry(zipEntry);

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

            // 关闭资源
            zos.closeEntry();
            zos.close();
            fis.close();
            fos.close();

            System.out.println("文件压缩成功!");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public static void main(String[] args) {
        // 示例:将 "example.txt" 文件压缩为 "example.zip"
        zipFile("example.txt", "example.zip");
    }
}

解释说明:

  1. 导入必要的包

    • java.io.*java.util.zip.* 是用于处理文件和压缩的类库。
  2. zipFile 方法

    • 接受两个参数:filePath(要压缩的文件路径)和 zipFilePath(生成的ZIP文件路径)。
    • 使用 FileInputStream 读取源文件,使用 FileOutputStreamZipOutputStream 写入压缩文件。
    • 创建一个 ZipEntry 对象表示压缩文件中的一个条目,并将其添加到 ZIP 输出流中。
    • 使用缓冲区读取源文件内容并写入到 ZIP 文件中。
    • 最后关闭所有流以确保资源释放。
  3. main 方法

    • 提供了一个简单的示例,演示如何调用 zipFile 方法将 example.txt 文件压缩为 example.zip

希望这个示例代码对你有帮助!

上一篇:java遍历jsonobject

下一篇:java遍历

大家都在看

java连接数据库的代码

java djl

ubuntu 卸载java

java读取excel中的图片

java新建

java sort用法

java collections.sort

java file类的方法

java发送qq邮件

java 判断

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

Laravel 中文站