public class ZipUtils
{ public static void doCompress(String srcFile, String zipFile) throws Exception { doCompress(new File(srcFile), new File(zipFile)); }
/** * 文件压缩
*@param srcFile 目录或者单个文件
* @param destFile 压缩后的ZIP文件
*学习群64弍46衣3凌9,资料群69似64陆0吧3
*/
public static void doCompress(File srcFile, File destFile) throws Exception {
ZipOutputStream out = new ZipOutputStream(new FileOutputStream(destFile));
if(srcFile.isDirectory())
{ File[] files = srcFile.listFiles(); for(File file : files){ doCompress(file, out); } }
else { doCompress(srcFile, out); } }
public static void doCompress(String pathname, ZipOutputStream out) throws IOException{ doCompress(new File(pathname), out); }
public static void doCompress(File file, ZipOutputStream out) throws IOException{
if(file.exists()){ byte[] buffer = new byte[1024];
FileInputStream fis = new FileInputStream(file);
out.putNextEntry(new ZipEntry(file.getName()));
int len = 0 ; // 读取文件的内容,打包到zip文件
while ((len = fis.read(buffer)) > 0) { out.write(buffer, 0, len); }
out.flush();
out.closeEntry();
fis.close(); } } }