網頁 貼吧 文章 作者 工作  
網頁搜尋
 
 愛PO吧 >> 史萊姆好玩遊戲 >> 瀏覽文章
回覆 加入我的最愛 與好友分享

C#, SharpZip 應用

本被文章 0 次, 共有回覆 10  
0
 
0
C# 程式要處理壓縮檔,大致上都會選擇好用的 SharpZip
SharpZip 支援 ZIP, GZip, Tar, BZip2 格式
其文件說明豐富, API 還算簡捷
雖然本身提供了 FastZip 簡單易用,但是只有以下功能
1. 壓縮某個資料夾成為 ZIP 檔案
2. 解縮某個 ZIP 檔案到指定資料夾如果想要對不同資料夾內許多檔案做壓縮處理,或是將 ZIP 內某個檔案取出
甚至只是想壓縮成 System.IO.Stream 資料流而不想儲存成檔案
FastZip 都無法處理
必須以 ZipOutputStream 類別來處理上述工作,建立整個機制卻不是那麼快天秤寫了函式將 ZipOutputStream 類別包起來
提供單一函式呼叫就可以來處理上述的動作函式使用如下
提供二個壓縮函式,六個解壓縮函式view plaincopy to clipboardprint?/// /// 壓縮檔案成 ZIP /// /// ZIP 檔名 /// 壓檔的檔案 public static bool Zip(string zipFilename, string[] filenames) /// /// 壓縮檔案成 ZIP /// /// 壓縮的檔案 public static System.IO.Stream Zip(string[] filenames) /// /// 從 ZIP 中解出特定檔案並回傳 ZipFileInfo 結構 /// /// ZIP 壓縮檔 /// 欲解出的檔案 public static ZipFileInfo[] Unzip(string zipFilename, string[] filenames) /// /// 從 ZIP 中解出特定檔案並回傳 ZipFileInfo 結構 /// /// ZIP 壓縮檔資料流 /// 欲解出的DVD類程式檔案 public static ZipFileInfo[] Unzip(System.IO.Stream stream, string[] filenames) /// /// 從 ZIP 中解出特定檔案到指定目錄 /// 指定目錄必須在目錄字串最後補上 '\\' 字元,否則會被當成檔案處理 /// /// ZIP 壓縮檔 /// 欲解出的檔案 /// 儲存的目錄 /// 是否依壓縮檔目錄結構建立子目錄 ( false 時則全部塞在 folder 目錄下) public static bool Unzip(string zipFilename, string[] filenames, string folder, bool isCreateSubFolder) /// /// 從 ZIP 中解出特定檔案到指定目錄 /// 指定目錄必須在目錄字串最後補上 '\\' 字元,MP3-CD否則會被當成檔案處理 /// /// ZIP 壓縮檔資料流 /// 欲解出的檔案 /// 儲存的演唱會.MTV.卡拉OK-DVD9目錄 /// 是否依壓縮檔目錄結構建立子目錄 ( false 時則全部塞在 folder 目錄下) public static bool Unzip(System.IO.Stream stream, string[] filenames, string folder, bool isCreateSubFolder) /// /// 解壓縮全部檔案到指定目錄下 /// /// ZIP 壓縮檔 /// 儲存的Dassault目錄 public static bool Unzip(string zipFilename, string folder) /// /// 解壓縮全部檔案到指定目錄下 /// /// ZIP 壓縮檔資料流 /// 儲存的目錄 public static bool Unzip(System.IO.Stream stream, string folder) 使用方法下載原始碼: FileEx.cs
下載 SharpZip 式庫及 FileEx.cs 檔案
SharpZip 加入參考,並加上 FileEx.cs 程式碼即可使用,以下為簡單的壓縮解壓縮範例view plaincopy to clipboardprint?// 壓縮 c:\a.txt, c:\b.txt 及 c:\temp 目錄成 c:\c.zip 檔案 RichieTools.FileEx.Zip("C:\\c.zip", new string[] { "c:\\a.txt", "c:\\b.txt","c:\\temp\\" } ); // 解壓縮 c:\c.zip 全部檔案到 c:\test 目錄下 RichieTools.FileEx.Unzip("c:\\c.zip", "c:\\text\\"); 來源位置為:http://richielin-programer.blogspot.com/2008/04/c-sharpzip.html

逛上一篇:   逛下一篇:

作者: ebqukpae
  (2010-01-26 15:03)
推薦文章: 將本文章推薦到【百度收藏】 將本文章推薦到【YouPush】 將本文章推薦到【udn共享書籤】 將本文章推薦到【Fiigo】書籤

 本文章共有回覆 10 篇,分 1 頁
 聲明:以上內容不代表本站立場,且內容由網友發表提供,若有爭議或違法由發表者承擔,本站將不負責連帶責任,謝謝。

 IPoBar  愛PK  愛遊戲  愛online
新手教學 客服中心 站務公告 交換連結 合作提案 關於我們
 
版權所有©ipobar Ltd., All Rights Reserved.
論壇內會員言論僅代表個人觀點,不代表本站同意其說法,本討論區不承擔由該言論所引起的法律責任