程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> java代碼解壓zip文件,java解壓zip

java代碼解壓zip文件,java解壓zip

編輯:JAVA綜合教程

java代碼解壓zip文件,java解壓zip


import java.io.File;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.InputStream;

import java.util.Enumeration;

import org.apache.tools.zip.ZipEntry;

import org.apache.tools.zip.ZipFile;

import org.springframework.stereotype.Service;

import org.springframework.transaction.annotation.Transactional;

/**
* @date 創建時間:2016年9月25日 上午11:06:46
* @version 1.0
* @parameter
* @since 2016年9月25日 上午11:06:46
* @return
*/
public class unZipFiles {

  //zip文件路徑
  String fileAddress = "D:\\test.zip";
  //zip文件解壓地址
  String unZipAddress = "F:\\unZipFiles\\";

  //去目錄下尋找文件
  File file = new File(fileAddress);
  ZipFile zipFile = null;
  try {
    zipFile = new ZipFile(file,"GBK");//設置編碼格式
  } catch (IOException exception) {
    exception.printStackTrace();
    System.out.println("解壓文件不存在!");
  }

  Enumeration e = zipFile.getEntries();
  while(e.hasMoreElements()) {
    ZipEntry zipEntry = (ZipEntry)e.nextElement();
    if(zipEntry.isDirectory()) {
    String name = zipEntry.getName();
    name = name.substring(0,name.length()-1);
    File f = new File(unZipAddress + name);
    f.mkdirs();
  } else {
    File f = new File(unZipAddress + zipEntry.getName());
    f.getParentFile().mkdirs();
    f.createNewFile();
    InputStream is = zipFile.getInputStream(zipEntry);
    FileOutputStream fos = new FileOutputStream(f);
    int length = 0;
    byte[] b = new byte[1024];
    while((length=is.read(b, 0, 1024))!=-1) {
      fos.write(b, 0, length);
    }
    is.close();
    fos.close();
    }
  }
  if (zipFile != null) {
  zipFile.close();
  }
  file.deleteOnExit();//解壓完以後將壓縮包刪除    
}

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved