用 appache 的 commons-compress-1.9.jar 压缩zip包
jar包下载路径:http://commons.apache.org/proper/commons-compress/download_compress.cgi
public static void main(String[] args) { ZipArchiveOutputStream zipOutput = null; try { String folderPath = "d:\\测试文件夹"; File zipFile = new File("d:\\demo.zip"); zipOutput = (ZipArchiveOutputStream) new ArchiveStreamFactory().createArchiveOutputStream(ArchiveStreamFactory.ZIP, new FileOutputStream(zipFile)); zipOutput.setEncoding("UTF-8"); zipOutput.setUseZip64(Zip64Mode.AsNeeded); File[] files = new File(folderPath).listFiles(); for(File file : files){ InputStream in = null; try { in = new FileInputStream(file); ZipArchiveEntry entry = new ZipArchiveEntry(file, file.getName());//zipOutput.createArchiveEntry(logFile, logFile.getName()); zipOutput.putArchiveEntry(entry); IOUtils.copy(in, zipOutput); zipOutput.closeArchiveEntry(); }finally{ if(in != null){ try { in.close(); } catch (Exception e) { } } } } zipOutput.finish(); zipOutput.close(); }catch(Exception e){ if(zipOutput != null){ try { zipOutput.close(); } catch (Exception e1) { } } throw e; } }
文章出处:http://blog.csdn.net/m13321169565/article/details/8085921