zoukankan      html  css  js  c++  java
  • java实现一次性压缩多个文件

    package com.testFileIO.test;
    
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.util.zip.ZipEntry;
    import java.util.zip.ZipOutputStream;
    
    /**
     * 〈一句话功能简述〉<br>
     * 〈功能详细描述〉
     * 
     * @author Pasier
     * @see [相关类/方法](可选)
     * @since [产品/模块版本] (可选)
     */
    public class ZipOutputStreamDemo {
        public static void main(String[] args) throws IOException {
            // 要被压缩的文件夹
            String fileName1 = "D:" + File.separator + "javaIo" + File.separator + "hello";
            File file = new File(fileName1);
            String zipFileName = "d:" + File.separator + "javaIo" + File.separator + file.getName()+".zip";
            File zipFile = new File(zipFileName);
            
            InputStream input = null;
            ZipOutputStream zipOut = new ZipOutputStream(new FileOutputStream(zipFile));
            // zip的名称为
            zipOut.setComment(file.getName());
            if (file.isDirectory()) {
                File[] files = file.listFiles();
                for (int i = 0; i < files.length; ++i) {
                    input = new FileInputStream(files[i]);
                    zipOut.putNextEntry(new ZipEntry(file.getName() + File.separator + files[i].getName()));
                    int temp = 0;
                    while ((temp = input.read()) != -1) {
                        zipOut.write(temp);
                    }
                    input.close();
                }
            }
            zipOut.close();
        }
    
    }
    分享到:
  • 相关阅读:
    谈执着
    SQL表自连接用法
    Mysql group by 排序问题
    php自动生成mysql的触发代码。
    XSS CSRF 攻击
    [微信开发利器]微信内移动前端开发抓包调试工具fiddler使用教程
    微信JS-SDK]微信公众号JS开发之卡券领取功能详解
    优化与重构的思考
    c语言 13
    c语言 13
  • 原文地址:https://www.cnblogs.com/enshrineZither/p/3127047.html
Copyright © 2011-2022 走看看