zoukankan      html  css  js  c++  java
  • java解压zip压缩包

    package com.spring.mvc.zip;

    import java.io.File;
    import java.io.FileOutputStream;
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.util.Enumeration;
    import java.util.zip.ZipEntry;

    import org.apache.tools.zip.ZipFile;


    public class zip {

    /**
    * 解压到指定目录
    * @param zipPath
    * @param descDir
    * @author isea533
    */
    public static void unZipFiles(String zipPath,String descDir)throws Exception{
    unZipFiles(new File(zipPath), descDir);
    }
    /**
    * 解压文件到指定目录
    * @param zipFile
    * @param descDir
    * @author isea533
    */
    @SuppressWarnings("rawtypes")
    public static void unZipFiles(File zipFile,String descDir)throws Exception{
    File pathFile = new File(descDir);
    if(!pathFile.exists()){
    pathFile.mkdirs();
    }
    ZipFile zip = new ZipFile(zipFile,"gbk");
    for(Enumeration entries = zip.getEntries();entries.hasMoreElements();){
    ZipEntry entry = (ZipEntry)entries.nextElement();
    String zipEntryName = entry.getName();
    InputStream in = zip.getInputStream((org.apache.tools.zip.ZipEntry) entry);
    String outPath = (descDir+zipEntryName).replaceAll("\*", "/");;
    //判断路径是否存在,不存在则创建文件路径
    File file = new File(outPath.substring(0, outPath.lastIndexOf('/')));
    if(!file.exists()){
    file.mkdirs();
    }
    //判断文件全路径是否为文件夹,如果是上面已经上传,不需要解压
    if(new File(outPath).isDirectory()){
    continue;
    }
    //输出文件路径信息
    System.out.println(outPath);

    OutputStream out = new FileOutputStream(outPath);
    byte[] buf1 = new byte[1024];
    int len;
    while((len=in.read(buf1))>0){
    out.write(buf1,0,len);
    }
    in.close();
    out.close();
    }
    System.out.println("******************解压完毕********************");
    }

    public static void main(String[] args) throws Exception {

    /**
    * 解压文件
    */
    File zipFile = new File("d://zhouzhiwei.zip"); //压缩包地址
    String path = "d://zipfile/"; //被解压到这个路径
    unZipFiles(zipFile, path);
    }
    }

  • 相关阅读:
    Auto Mapper01
    一个ActionResult中定位到两个视图—<团委项目>
    网站根目录的问题
    数据库基础和断点调试
    linux 环境下jmeter+ant+jenkins
    Postman 下载和使用
    用ExtentReports美化你的测试报告
    extentreports报告插件与testng集成
    SourceTree使用图解
    charles4.2下载与破解方法以及配置https
  • 原文地址:https://www.cnblogs.com/yy123/p/4011261.html
Copyright © 2011-2022 走看看