欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java创建ZIP压缩文件的方法

程序员文章站 2024-03-05 21:16:55
本文实例讲述了java创建zip压缩文件的方法。分享给大家供大家参考。具体如下: 这里注意:建议使用org.apache.tools.zip.*包下相关类,否则可能会出现...

本文实例讲述了java创建zip压缩文件的方法。分享给大家供大家参考。具体如下:

这里注意:建议使用org.apache.tools.zip.*包下相关类,否则可能会出现中文乱码问题。

/**
 * 压缩文件夹
 * @param sourcedir 文件夹名称(包含路径)
 * @param targetzipfile 生成zip文件名
 * @author liuxiangwei
 */
public static void zipdir(string sourcedir, string targetzipfile) {
  try {
    fileoutputstream target = new fileoutputstream(targetzipfile);
    zipoutputstream out = new zipoutputstream(new bufferedoutputstream(target));
    int buffer_size = 1024;
    byte buff[] = new byte[buffer_size];
    file dir = new file(sourcedir);
    if (!dir.isdirectory()) {
      throw new illegalargumentexception(sourcedir+" is not a directory!");
    }
    file files[] = dir.listfiles();
    for (int i = 0; i < files.length; i++) {
      fileinputstream fi = new fileinputstream(files[i]);
      bufferedinputstream origin = new bufferedinputstream(fi);
      zipentry entry = new zipentry(files[i].getname());
      out.putnextentry(entry);
      int count;
      while ((count = origin.read(buff)) != -1) {
        out.write(buff, 0, count);
      }
      origin.close();
    }
    out.close();
  } catch (ioexception e) {
    throw new msgexception("");
  }
}

希望本文所述对大家的java程序设计有所帮助。