<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>

            Java的壓縮與解壓縮ZIP

            時間:2024-11-10 03:32:26 ACCP培訓 我要投稿
            • 相關推薦

            Java的壓縮與解壓縮ZIP

              壓縮是一種通過特定的算法來減小計算機文件大小的機制。這種機制是一種很方便的發明,尤其是對網絡用戶,因為它可以減小文件的字節總數,使文件能夠通過較慢的互聯網連接實現更快傳輸,此外還可以減少文件的磁盤占用空間。下面小編準備了關于Java的壓縮與解壓縮ZIP,提供給大家參考!

              壓縮的

              import java.io.BufferedInputStream;

              import java.io.BufferedOutputStream;

              import java.io.File;

              import java.io.FileInputStream;

              import java.io.FileOutputStream;

              import java.util.zip.ZipEntry;

              import java.util.zip.ZipOutputStream;

              public class Zip {

              static final int BUFFER = 2048;

              public static void main(String argv[]) {

              try {

              BufferedInputStream origin = null;

              FileOutputStream dest = new FileOutputStream("E:\\test\\myfiles.zip");

              ZipOutputStream out = new ZipOutputStream(new BufferedOutputStream(

              dest));

              byte data[] = new byte[BUFFER];

              File f = new File("e:\\test\\a\\");

              File files[] = f.listFiles();

              for (int i = 0; i < files.length; i++) {

              FileInputStream fi = new FileInputStream(files[i]);

              origin = new BufferedInputStream(fi, BUFFER);

              ZipEntry entry = new ZipEntry(files[i].getName());

              out.putNextEntry(entry);

              int count;

              while ((count = origin.read(data, 0, BUFFER)) != -1) {

              out.write(data, 0, count);

              }

              origin.close();

              }

              out.close();

              } catch (Exception e) {

              e.printStackTrace();

              }

              }

              }

              解壓縮的

              import java.io.BufferedInputStream;

              import java.io.BufferedOutputStream;

              import java.io.File;

              import java.io.FileOutputStream;

              import java.util.Enumeration;

              import java.util.zip.ZipEntry;

              import java.util.zip.ZipFile;

              public class UnZip {

              static final int BUFFER = 2048;

              public static void main(String argv[]) {

              try {

              String fileName = "E:\\test\\myfiles.zip";

              String filePath = "E:\\test\\";

              ZipFile zipFile = new ZipFile(fileName);

              Enumeration emu = zipFile.entries();

              int i=0;

              while(emu.hasMoreElements()){

              ZipEntry entry = (ZipEntry)emu.nextElement();

              //會把目錄作為一個file讀出一次,所以只建立目錄就可以,之下的文件還會被迭代到。

              if (entry.isDirectory())

              {

              new File(filePath + entry.getName()).mkdirs();

              continue;

              }

              BufferedInputStream bis = new BufferedInputStream(zipFile.getInputStream(entry));

              File file = new File(filePath + entry.getName());

              //加入這個的原因是zipfile讀取文件是隨機讀取的,這就造成可能先讀取一個文件

              //而這個文件所在的目錄還沒有出現過,所以要建出目錄來。

              File parent = file.getParentFile();

              if(parent != null && (!parent.exists())){

              parent.mkdirs();

              }

              FileOutputStream fos = new FileOutputStream(file);

              BufferedOutputStream bos = new BufferedOutputStream(fos,BUFFER);

              int count;

              byte data[] = new byte[BUFFER];

              while ((count = bis.read(data, 0, BUFFER)) != -1)

              {

              bos.write(data, 0, count);

              }

              bos.flush();

              bos.close();

              bis.close();

              }

              zipFile.close();

              } catch (Exception e) {

              e.printStackTrace();

              }

              }

              }

            【Java的壓縮與解壓縮ZIP】相關文章:

            Java文件解壓縮示例08-21

            Java文件解壓縮實例詳解201607-26

            Linux解壓縮命令詳解201609-04

            PHP的壓縮函數06-21

            Java與Java web的區別08-10

            GRE寫作時間壓縮技巧05-31

            壓縮視頻文件的方法08-23

            關于俄語壓縮機詞匯10-13

            java習題及答案10-25

            學習java技巧09-23

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看