首页 > 代码库 > java 版本压缩、解压缩zip
java 版本压缩、解压缩zip
import java.io.*;import java.util.*;import java.util.zip.ZipOutputStream;import java.util.zip.ZipEntry;import java.util.zip.ZipFile;public class FileMgr { public FileMgr() { } /** * 压缩文件 * @param srcfile File[] 需要压缩的文件列表 * @param zipfile File 压缩后的文件 */ public static void ZipFiles(java.io.File[] srcfile, java.io.File zipfile) { byte[] buf = new byte[1024]; try { // Create the ZIP file ZipOutputStream out = new ZipOutputStream(new FileOutputStream(zipfile)); // Compress the files for (int i = 0; i < srcfile.length; i++) { FileInputStream in = new FileInputStream(srcfile[i]); // Add ZIP entry to output stream. out.putNextEntry(new ZipEntry(srcfile[i].getName())); // Transfer bytes from the file to the ZIP file int len; while ( (len = in.read(buf)) > 0) { out.write(buf, 0, len); } // Complete the entry out.closeEntry(); in.close(); } // Complete the ZIP file out.close(); System.out.println("压缩完成."); } catch (IOException e) { e.printStackTrace(); } } /** * 解压缩 * @param zipfile File 需要解压缩的文件 * @param descDir String 解压后的目标目录 */ public static void UnZipFiles(java.io.File zipfile, String descDir) { try { // Open the ZIP file ZipFile zf = new ZipFile(zipfile); for (Enumeration entries = zf.entries(); entries.hasMoreElements(); ) { // Get the entry name ZipEntry entry = ( (ZipEntry) entries.nextElement()); String zipEntryName = entry.getName(); InputStream in = zf.getInputStream(entry); // System.out.println(zipEntryName); OutputStream out = new FileOutputStream(descDir + zipEntryName); byte[] buf1 = new byte[1024]; int len; while ( (len = in.read(buf1)) > 0) { out.write(buf1, 0, len); } // Close the file and stream in.close(); out.close(); System.out.println("解压缩完成."); } } catch (IOException e) { e.printStackTrace(); } }}
java 版本压缩、解压缩zip
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。