Java压缩文件/目录成ZIP包最新技巧

2016-02-19 14:34 7 1 收藏

岁数大了,QQ也不闪了,微信也不响了,电话也不来了,但是图老师依旧坚持为大家推荐最精彩的内容,下面为大家精心准备的Java压缩文件/目录成ZIP包最新技巧,希望大家看完后能赶快学习起来。

【 tulaoshi.com - 编程语言 】

使用Java自带的类 java.util.zip进行文件/目录的压缩的话,有一点不足,不支持中文的名件/目录命名,假如有中文名,那么打包就会失败。本人经过一段时间的摸索和实践,发现在一般的Ant.jar类库中也有zip类,import org.apache.tools.zip.*,能够解决不支持中文文件目录的问题,同时,Ant的获得途径也比较多,一般的应用服务器中有这个包,实在不行去下载个tomcat5.X,里面也有ant.jar,本人经过测试,可以使用。
  
  例子如下:
  
  import java.io.File;
  import org.apache.tools.zip.ZipOutputStream;
  import java.io.FileInputStream;
  import java.io.FileOutputStream;
  import dianda.cwmanage.*;
  import dianda.com.util.Format;
  
  public class CompressBook {
   public CompressBook() {
  }
  
  public void zip(String inputFileName) throws Exception {
   String zipFileName="c:est.zip";//打包后文件名字
   System.out.println(zipFileName);
   zip(zipFileName, new File(inputFileName));
  
  }
  
  private void zip(String zipFileName, File inputFile) throws Exception {
   ZipOutputStream out = new ZipOutputStream(new FileOutputStream(zipFileName));
   zip(out, inputFile, "");
   System.out.println("zip done");
   out.close();
  }
  
  private void zip(ZipOutputStream out, File f, String base) throws Exception {
   if (f.isDirectory()) {
  File[] fl = f.listFiles();
  out.putNextEntry(new org.apache.tools.zip.ZipEntry(base + "/"));
  base = base.length() == 0 ? "" : base + "/";
  for (int i = 0; i fl.length; i++) {
   zip(out, fl[i], base + fl[i].getName());
  }
   }
   else {
  out.putNextEntry(new org.apache.tools.zip.ZipEntry(base));
  FileInputStream in = new FileInputStream(f);
  int b;
  System.out.println(base);
  while ( (b = in.read()) != -1) {
   out.write(b);
  }
  in.close();
   }
  }
  }
  唯一遗憾,美中不足的是,无论,java.util.zip或者org.apache.tools.zip都不能解压rar工具打成的rar包,搜了半天也找不到采用java解压rar工具打成的包,盼望哪位高人能够提供解压rar工具打成的包,和大家分享一下!进入讨论组讨论。

来源:http://www.tulaoshi.com/n/20160219/1607250.html

延伸阅读
快压如何压缩文件   一、使用右键压缩 右键点击需要压缩的文件或文件夹,在弹出菜单中选择如何压缩。 "创建压缩文件...":先设置后压缩。 "添加到'文件名.格式'":按默认设置压缩(可修改,点击看详细)。 "压缩并Email...":先设置后压缩,并用Email发送。 "压缩到'文件...
下载破解软件 首先下载一个Intelore RAR Password Recovery,并安装好 启动软件 软件安装完成以后,双击桌面上的快捷方式,启动程序,进入软件的主界面 选择需要破解的软件 启动程序,在打开的界面上方点击相应的图标,弹出打开对话框,在此对话框内选择要破解的RAR文件,然后点击“打开”按钮 导入软件 RAR...
快压如何压缩文件?   快压是一款多功能的文件压缩软件,该软件支持对常见文件的压缩与解压,并能够很好的支持解压 KZ、ZIP、7Z、RAR、MOU、ACE、ARJ、BZ2、CAB、GZ、ISO、JAR、LZH、TAR、UUE、Z 等格式文件。不过有些用户不知道如何使用快压来创建压缩文件,故此小编在这里为大家带来了操作方法,需要的用户赶快试试吧!  ...
怎么在iPhone、iPad设备上解压zip rar文件压缩包   1、先在app store那里搜索下载安装软件WinZip软件,要求系统版本是iOS 4.3以上还提供对压缩或解压时的密码支持。 2、通过网页或邮箱的附件或云存储或任何应用打开zip文件,会发现有一个选项是WinZip中打开,点击在WinZip中打开选项tuLaoShi.com。 3、点击该按钮后就...
快压怎么压缩文件   快压是国内第一款具备自主压缩格式的软件,算是国产压缩软件中比较好用的一款了。快压自身的压缩格式 kz 具有超大的压缩比和超快的压缩解压速度。同时,快压还兼容 rar,zip 和 7z 等40余种压缩文件。今天小编就来教教大家如何用快压压缩文件。 一、使用右键压缩 右键点击需要压缩的文件或文件夹,在弹...

经验教程

512

收藏

69
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部