zoukankan      html  css  js  c++  java
  • zip压缩文件解压到指定目录

      
      public void DoTask(){
            try{
    
                String zipFilePath = "D:\UnzipFile\bd_2018.zip";
                String unzipFilePath ="D:\UnzipFile\index\";
    
                UnZipFileTest(new File(zipFilePath),unzipFilePath);
    
            }catch (Exception e){
                System.out.println(e.getMessage());
            }
    
        }
    
    public void UnZipFileTest(File zipFilePath, String unzipFilePath) throws IOException {
    
            File pathFile = new File(unzipFilePath);
            if(!pathFile.exists())
            {
                pathFile.mkdirs();
            }
    
            try{
                //解决zip文件中有中文目录或者中文文件
                ZipFile zip = new ZipFile(zipFilePath, Charset.forName("GBK"));
                for(Enumeration entries = zip.entries(); entries.hasMoreElements();)
                {
                    ZipEntry entry = (ZipEntry)entries.nextElement();
                    String zipEntryName = entry.getName();
                    InputStream in = zip.getInputStream(entry);
                    String outPath = (unzipFilePath+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();
                }
            }catch (IOException e){
                System.out.println(e.getMessage());
            }
            System.out.println("******************解压完毕********************");
    
        }
  • 相关阅读:
    KDJ回测
    利用网易获取所有股票数据
    利用东方财富网获取股票代码
    python发邮件
    用指针向数组插入元素
    冒泡排序
    Hadoop的安装与配置
    关于执行memcached报错问题
    tomcat Linux安装
    网易CentOS yum源
  • 原文地址:https://www.cnblogs.com/zhangrh/p/15162500.html
Copyright © 2011-2022 走看看