六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網(wǎng)中心:是一個免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

Java咖啡館——一個壓縮歸檔實(shí)用軟件(4)

[摘要]6.ZIP壓縮和CRC校驗(yàn)  良好的開端是成功的一半,有了上面的準(zhǔn)備,完成主程序也就很容易了。public static void main(String[] args) { // 程序出現(xiàn)任何異常都將打印使用信息。 try { // 記錄正則表達(dá)式和路徑名稱。 Str...

    

  6.ZIP壓縮和CRC校驗(yàn)

  良好的開端是成功的一半,有了上面的準(zhǔn)備,完成主程序也就很容易了。

public static void main(String[] args) {
   // 程序出現(xiàn)任何異常都將打印使用信息。
   try {
      // 記錄正則表達(dá)式和路徑名稱。
      String regex = args[1];
      String targetFolder = args[0];

      File path = new File(targetFolder);
      ArrayList files = new ArrayList();

      // 遞歸搜索path所指定的文件夾內(nèi)以及子文件夾內(nèi)滿足合正則表達(dá)式。
      recursiveAppend(path, files, regex);

     if (files.size() == 0) {
     System.out.println("找不到任何匹配的文件!");
        return;
     }

     // 把符合正則表達(dá)式的文件壓縮成ZIP格式并且返回CRC校驗(yàn)值。
     FileOutputStream file = new FileOutputStream("Backup.zip");
     CheckedOutputStream csum = new CheckedOutputStream(file, new CRC32());
     ZipOutputStream zos = new ZipOutputStream(csum);
     BufferedOutputStream out = new BufferedOutputStream(zos);

     // 為ZIP包添加注釋。
     zos.setComment("Backup " + regex + " in " + targetFolder);

     // 開始壓縮。
     for (int i = 0; i < files.size(); i++) {
       String currentFile = (String) files.get(i);
       System.out.println("Writing file " + currentFile);
       BufferedReader in = new BufferedReader(new FileReader(currentFile));
       zos.putNextEntry(new ZipEntry(currentFile));
       int c;
       while ((c = in.read()) != -1)
          out.write(c);
       in.close();
       }
       out.close();

       // 當(dāng)壓縮包關(guān)閉以后便可以得到CRC校驗(yàn)值。
       System.out.println("CRC校驗(yàn)值:" + csum.getChecksum().getValue());
     } catch (Exception e) {
       printUsage();
     }
}

  首先可以看到,整個main函數(shù)部分是用一個大的try...catch異常捕獲語句容納起來的,當(dāng)程序出現(xiàn)任何異常時,我們都認(rèn)為是用戶的參數(shù)不正確,便調(diào)用printUsage()方法打印使用信息,具體代碼從略。

  首先通過recursiveAppend()方法遞歸搜索指定的文件夾內(nèi)以及子文件夾內(nèi)滿足合正則表達(dá)式的文件名,結(jié)果將保存在files中。如果有滿足條件的文件,則把這些文件壓縮成ZIP格式,并添加適當(dāng)?shù)淖⑨尅.?dāng)壓縮包關(guān)閉以后便可以得到ZIP包的CRC校驗(yàn)值。

  注意,以上這些代碼使用的都是Java API內(nèi)置的功能,如果你在編寫的過程中遇到找不到類定義的情況,別忘記使用Eclipse內(nèi)置的Ctrl+Shift+M自動導(dǎo)入功能。
至此,整個軟件全部編寫好了。你可以在命令行手動輸入把玩一下,或者點(diǎn)擊Run菜單的Run...菜單項,配置Eclipse運(yùn)行的參數(shù)如圖2所示。

Java咖啡館——一個壓縮歸檔實(shí)用軟件(4)


 





主站蜘蛛池模板: 日日噜噜噜夜夜爽爽狠狠69 | 亚洲六月丁香六月婷婷蜜芽 | 日韩一级二级三级 | 欧美特黄一免在线观看 | 欧美特黄特色aaa大片免费看 | 一级做a爰片久久免费 | 伊人中文字幕在线观看 | 亚洲乱人伦在线 | 色综合天天综久久久噜噜噜久久〔 | 欧美无遮挡一区二区三区 | 一国产一级淫片a免费播放口 | 日本a级片免费 | 香蕉久久夜色精品国产尤物 | 日本一区二区三区中文字幕视频 | 亚州综合 | 日本色中色| 欧美性色黄大片在线观看 | 在线观看黄免费 | 欧洲在线 | 中文字幕在线视频不卡 | 青娱乐精品视频在线观看 | 偷拍拍| 手机天堂 | 伊人影院在线播放 | 一二三四免费观看高清观看在线 | 日韩欧美高清在线 | 一区二区三区在线观看视频 | 日本免费不卡视频 | 四虎精品国产一区二区三区 | 视频一区精品 | 青草资源视频在线高清观看 | 日韩欧美色视频 | 午夜激情网站 | 一二三四免费高清观看在线观看 | 天天搞天天操 | 一区二区免费看 | 最近最新免费视频8 | 青青热在线观看视频精品 | 亚洲爱色| 香草影院 | 亚洲免费在线视频 |