日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

          歡迎訪問 生活随笔!

          生活随笔

          當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

          编程问答

          java zip文件夹_如何使用java压缩文件夹成为zip包

          發布時間:2024/7/23 编程问答 28 豆豆
          生活随笔 收集整理的這篇文章主要介紹了 java zip文件夹_如何使用java压缩文件夹成为zip包 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

          展開全部

          在JDK中有一個zip工具類:java.util.zip ? ?Provides classes for reading and writing the standard ZIP and

          GZIP file formats.

          使用此類可以將文件夾或者多個文件進行打包壓縮操作。

          在使用之前先了解62616964757a686964616fe59b9ee7ad9431333363376462關鍵方法:ZipEntry(String name) ????????Creates a new zip entry with the specified name.

          使用ZipEntry的構造方法可以創建一個zip壓縮文件包的實例,然后通過ZipOutputStream將待壓縮的文件以流的形式寫進該壓縮包中。具體實現代碼如下:import?java.io.BufferedInputStream;

          import?java.io.BufferedOutputStream;

          import?java.io.File;

          import?java.io.FileInputStream;

          import?java.io.FileNotFoundException;

          import?java.io.FileOutputStream;

          import?java.io.IOException;

          import?java.util.zip.ZipEntry;

          import?java.util.zip.ZipOutputStream;

          /**

          *?將文件夾下面的文件

          *?打包成zip壓縮文件

          *

          *?@author?admin

          *

          */

          public?final?class?FileToZip?{

          private?FileToZip(){}

          /**

          *?將存放在sourceFilePath目錄下的源文件,打包成fileName名稱的zip文件,并存放到zipFilePath路徑下

          *?@param?sourceFilePath?:待壓縮的文件路徑

          *?@param?zipFilePath?:壓縮后存放路徑

          *?@param?fileName?:壓縮后文件的名稱

          *?@return

          */

          public?static?boolean?fileToZip(String?sourceFilePath,String?zipFilePath,String?fileName){

          boolean?flag?=?false;

          File?sourceFile?=?new?File(sourceFilePath);

          FileInputStream?fis?=?null;

          BufferedInputStream?bis?=?null;

          FileOutputStream?fos?=?null;

          ZipOutputStream?zos?=?null;

          if(sourceFile.exists()?==?false){

          System.out.println("待壓縮的文件目錄:"+sourceFilePath+"不存在.");

          }else{

          try?{

          File?zipFile?=?new?File(zipFilePath?+?"/"?+?fileName?+".zip");

          if(zipFile.exists()){

          System.out.println(zipFilePath?+?"目錄下存在名字為:"?+?fileName?+".zip"?+"打包文件.");

          }else{

          File[]?sourceFiles?=?sourceFile.listFiles();

          if(null?==?sourceFiles?||?sourceFiles.length<1){

          System.out.println("待壓縮的文件目錄:"?+?sourceFilePath?+?"里面不存在文件,無需壓縮.");

          }else{

          fos?=?new?FileOutputStream(zipFile);

          zos?=?new?ZipOutputStream(new?BufferedOutputStream(fos));

          byte[]?bufs?=?new?byte[1024*10];

          for(int?i=0;i

          //創建ZIP實體,并添加進壓縮包

          ZipEntry?zipEntry?=?new?ZipEntry(sourceFiles[i].getName());

          zos.putNextEntry(zipEntry);

          //讀取待壓縮的文件并寫進壓縮包里

          fis?=?new?FileInputStream(sourceFiles[i]);

          bis?=?new?BufferedInputStream(fis,?1024*10);

          int?read?=?0;

          while((read=bis.read(bufs,?0,?1024*10))?!=?-1){

          zos.write(bufs,0,read);

          }

          }

          flag?=?true;

          }

          }

          }?catch?(FileNotFoundException?e)?{

          e.printStackTrace();

          throw?new?RuntimeException(e);

          }?catch?(IOException?e)?{

          e.printStackTrace();

          throw?new?RuntimeException(e);

          }?finally{

          //關閉流

          try?{

          if(null?!=?bis)?bis.close();

          if(null?!=?zos)?zos.close();

          }?catch?(IOException?e)?{

          e.printStackTrace();

          throw?new?RuntimeException(e);

          }

          }

          }

          return?flag;

          }

          public?static?void?main(String[]?args){

          String?sourceFilePath?=?"D:\\TestFile";

          String?zipFilePath?=?"D:\\tmp";

          String?fileName?=?"12700153file";

          boolean?flag?=?FileToZip.fileToZip(sourceFilePath,?zipFilePath,?fileName);

          if(flag){

          System.out.println("文件打包成功!");

          }else{

          System.out.println("文件打包失敗!");

          }

          }

          }

          總結

          以上是生活随笔為你收集整理的java zip文件夹_如何使用java压缩文件夹成为zip包的全部內容,希望文章能夠幫你解決所遇到的問題。

          如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。