廢話不多說了,給大家貼關(guān)鍵代碼了,具體代碼如下所示:
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 創(chuàng)建時間: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");//設(shè)置編碼格式  } 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();//解壓完以后將壓縮包刪除 }好了,代碼到此結(jié)束,以上所述是小編給大家介紹的Java解壓zip文件的關(guān)鍵代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對武林網(wǎng)網(wǎng)站的支持!
新聞熱點(diǎn)
疑難解答
圖片精選