mport java.io.*; import java.util.*; import java.util.zip.ZipOutputStream; import java.util.zip.ZipEntry; import java.util.zip.ZipFile; public class FileMgr {   public FileMgr() {   }   /**    * 压缩文件    * @param srcfile File[]  需要压缩的文件列表    * @param zipfile File    压缩后的文件    */   public static void ZipFiles(java.io.File[] srcfile, java.io.File zipfile) {     byte[] buf = new byte[1024];     try {       // Create the ZIP file       ZipOutputStream out = new ZipOutputStream(new FileOutputStream(zipfile));       // Compress the files       for (int i = 0; i < srcfile.length; i++) {         FileInputStream in = new FileInputStream(srcfile[i]);         // Add ZIP entry to output stream.         out.putNextEntry(new ZipEntry(srcfile[i].getName()));         // Transfer bytes from the file to the ZIP file         int len;         while ( (len = in.read(buf)) > 0) {           out.write(buf, 0, len);         }         // Complete the entry         out.closeEntry();         in.close();       }       // Complete the ZIP file       out.close();       System.out.println("压缩完成.");     }     catch (IOException e) {       e.printStackTrace();     }   }   /**    * 解压缩    * @param zipfile File 需要解压缩的文件    * @param descDir String  解压后的目标目录    */   public static void UnZipFiles(java.io.File zipfile, String descDir) {     try {       // Open the ZIP file       ZipFile zf = new ZipFile(zipfile);       for (Enumeration entries = zf.entries(); entries.hasMoreElements(); ) {         // Get the entry name         ZipEntry entry = ( (ZipEntry) entries.nextElement());         String zipEntryName = entry.getName();         InputStream in = zf.getInputStream(entry);         // System.out.println(zipEntryName);         OutputStream out = new FileOutputStream(descDir + zipEntryName);         byte[] buf1 = new byte[1024];         int len;         while ( (len = in.read(buf1)) > 0) {           out.write(buf1, 0, len);         }         // Close the file and stream         in.close();         out.close();         System.out.println("解压缩完成.");       }     }     catch (IOException e) {       e.printStackTrace();     }   } }

java多个文件压缩_java实现多个文件压缩相关推荐

  1. java 流压缩_java之IO流:压缩文件

    在java的学习中,IO流是一个避不开的话题.在java日常的学习和使用中,为了给不同的场景提供不同的用途,IO流拥有一个庞大的方法集合.虽然给使用者提供了极大的便利,但此同时也带来了学习时的异常冗杂 ...

  2. java解压zip异常_java解压zip文件示例

    若是使用Java自带的压缩工具包来实现解压缩文件到指定文件夹的功能,因为jdk提供的zip只能按UTF-8格式处理,而Windows系统中文件名是以GBK方式编码的,所以如果是解压一个包含中文文件名的 ...

  3. java解压zip代码_Java解压zip文件(文本)压缩包

    说明:由于我们的日志收集到指定服务器上,会按天压缩成一个zip格式的压缩包,但是有时候需要对这些日志进行处理,人工解压在处理,显示对于大量的日志处理是不行的(效率太低),所以还是要采用程序自动解压效率 ...

  4. java http 下载网页代码_Java下http下载文件客户端和上传文件客户端实例代码

    Java下http下载文件客户端和上传文件客户端实例代码 发布于 2021-1-14| 复制链接 摘记: 一.下载客户端代码 ```java package javadownload; import ...

  5. java多线程流式写入文件夹_java多线程写入同一文件

    1.[代码][Java]代码 package com.thread; import java.io.File; import java.io.FileNotFoundException; import ...

  6. java复制文件夹_java实现拷贝一个文件夹,里面存在目录和文件,使用文件创建和文件流...

    内容我都在注释里说明了,有什么不懂的可以问我.主要是为了回顾下文件的创建和文件流的读写,所以写了这个拷贝的代码,还可以添加很多功能,像拷贝哪个文件到哪都是可以改个,可以用scanner输入,还有就是可 ...

  7. java读取文件 路径_Java中的获取文件的物理绝对路径,和读取文件

    获取文件的绝对路径,读取该文件 一.文件目录打印图 下面的文件目录图,是项目中文件的位置信息:下面的例子是按照这个图来演示的. . |-- java | |-- ibard | | |-- demo1 ...

  8. java 字符流读取方法_JAVA字符流方式读取文件 问题!

    代码如下:package练习4;importjava.io.*;publicclassMain{publicstaticvoidmain(String[]args)throwsIOException{ ...

  9. java多线程 文件夹_java多线程读同一个文件

    java多线程同时读取一个文件,这个方法可行吗?不可行. 多线程能够提高效率是因为现在的cpu普遍是多核cpu, 多条线程可以在多个内核中同时执行来提高计算效率.但是计算机磁盘的磁头只有一个,即使多条 ...

  10. java 移动文件夹_java代码实现移动文件以及文件夹

    //文件原地址 File oldFile = new File("c:/test.xls"); //文件新(目标)地址 String newPath = "c:/test ...

最新文章

  1. 记一次性能优化,单台4核8G机器支撑5万QPS
  2. Feature Selection Based on Mutual Information:Criteria of Max-Dependency, Max-Relevance,and Min-Redu
  3. php xorcrevasse,XorEncrypt
  4. 异常:System.Runtime.InteropServices.Marshal.GetTypeFromCLSID(System.Guid)
  5. 判断一颗二叉树是否为搜索二叉树和完全二叉树
  6. linux mv 保持目录结构_Linux中的mv命令详解
  7. oracle取本月最后一天是星期几_Oracle取得本月、本年第一天和最后一天
  8. Jenkins 权限配置与集群配置
  9. 比较下OceanBase的选举协议和Raft的选举协议的区别
  10. iOS之socket编程
  11. CSDNamp;amp;《程序员》杂志创始人——蒋涛 推荐
  12. Jzoj5231 序列问题
  13. logback.xml日志配置文件,springboot
  14. ApacheHttpServer出现启动报错:the requested operation has failed解决办法
  15. Java 网络编程之Socket详解
  16. CAD软件中如何自定义CAD填充图案?
  17. 伪原创视频软件 视频MD5怎么更改
  18. zbox mysql_我服务器原来有apache和mysql,然后我把zbox的apache端口改成8000,mysql改成3307,无法打开网页...
  19. 帝国cms标签--2
  20. AutoCAD 2004-2022 官方简体中文版下载直链

热门文章

  1. 中国移动宣布已开通5G基站近5万个,在50个城市提供5G服务
  2. 全球互联网领域第一人!马云获福布斯终身成就奖
  3. 昔日国产手机巨头突然复出发两款新机 网友:回来当炮灰吗?
  4. 三星国行S10 5G版本要来了?这次它抢在了国产手机的前面
  5. 华为旗下首款弹出式前置摄像头新机发布:或归属荣耀旗下...
  6. 沈梦辰回应闲鱼卖假货事件:负责到底 不做一锤子买卖
  7. 拳王虚拟项目公社:怎么找低价电影票,低价电影票怎样赚钱,低价电影票实操赚钱方法?
  8. 内核模块编程之_初窥门径【ZT】
  9. 2018年高二计算机试题,2018年上学期高二信息技术期末考试试题.pdf
  10. AIR中文帮助 第十章. 窗体(Windows)和菜单