이 기사는 Java에서 여러 파일을 압축하는 방법(코드 예제)을 소개합니다. 이는 특정 참조 가치가 있으므로 도움이 될 수 있습니다.
먼저 도구 클래스를 생성하고 인터페이스를 정의하세요.
1: fileList: 여러 파일의 경로+이름
2: zipFileName: 압축된 파일 이름
다음은 코드입니다. 주석은 매우 상세합니다
public class ZIPUtil { public static String createZipFile(ArrayList<String> fileList, String zipFileName) { if(fileList == null || fileList.size() == 0 || CommonUtil.isEmpty(zipFileName)){ return null; } //构建压缩文件File File zipFile = new File(zipFileName); //初期化ZIP流 ZipOutputStream out = null; try{ //构建ZIP流对象 out = new ZipOutputStream(new FileOutputStream(zipFile)); //循环处理传过来的集合 for(int i = 0; i < fileList.size(); i++){ //获取目标文件 File inFile = new File(fileList.get(i)); if(inFile.exists()){ //定义ZipEntry对象 ZipEntry entry = new ZipEntry(inFile.getName()); //赋予ZIP流对象属性 out.putNextEntry(entry); int len = 0 ; //缓冲 byte[] buffer = new byte[1024]; //构建FileInputStream流对象 FileInputStream fis; fis = new FileInputStream(inFile); while ((len = fis.read(buffer)) > 0) { out.write(buffer, 0, len); out.flush(); } //关闭closeEntry out.closeEntry(); //关闭FileInputStream fis.close(); } } }catch (IOException e) { e.printStackTrace(); }finally{ try { //最后关闭ZIP流 out.close(); } catch (IOException e) { e.printStackTrace(); } } return zipFileName; } }
위 내용은 Java에서 여러 파일을 압축하는 방법 소개(코드 예)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!