這篇文章主要介紹java如何壓縮多個文件的方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
創(chuàng)新互聯(lián)響應(yīng)式網(wǎng)站特點就是不管在電腦、平板還是手機上,H5高端網(wǎng)站建設(shè)都會根據(jù)屏幕尺寸自動調(diào)節(jié)大小、圖片分辨率,并且融入一定的動畫特效,讓網(wǎng)站看起來非常的美觀大方。從網(wǎng)站需求對接到網(wǎng)站制作設(shè)計、從代碼編寫到項目上線運維,技術(shù)人員全程跟蹤,快速響應(yīng)
首先創(chuàng)建一個工具類,定義好接口,這里的參數(shù)
1:fileList:多個文件的path+name
2: zipFileName:壓縮后的文件名
下面是代碼,注釋已經(jīng)很詳細了
public class ZIPUtil { public static String createZipFile(ArrayListfileList, String zipFileName) { if(fileList == null || fileList.size() == 0 || CommonUtil.isEmpty(zipFileName)){ return null; } //構(gòu)建壓縮文件File File zipFile = new File(zipFileName); //初期化ZIP流 ZipOutputStream out = null; try{ //構(gòu)建ZIP流對象 out = new ZipOutputStream(new FileOutputStream(zipFile)); //循環(huán)處理傳過來的集合 for(int i = 0; i < fileList.size(); i++){ //獲取目標(biāo)文件 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]; //構(gòu)建FileInputStream流對象 FileInputStream fis; fis = new FileInputStream(inFile); while ((len = fis.read(buffer)) > 0) { out.write(buffer, 0, len); out.flush(); } //關(guān)閉closeEntry out.closeEntry(); //關(guān)閉FileInputStream fis.close(); } } }catch (IOException e) { e.printStackTrace(); }finally{ try { //最后關(guān)閉ZIP流 out.close(); } catch (IOException e) { e.printStackTrace(); } } return zipFileName; } }
以上是java如何壓縮多個文件的方法的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!