2008年4月2日 星期三

C# SharpZip 應用

http://richielin-programer.blogspot.com/2008/04/c-sharpzip.html

C# 程式要處理壓縮檔,大致上都會選擇好用的 SharpZip
SharpZip 支援 ZIP, GZip, Tar, BZip2 格式
其文件說明豐富, API 還算簡捷
雖然本身提供了 FastZip 簡單易用,但是只有以下功能
1. 壓縮某個資料夾成為 ZIP 檔案
2. 解縮某個 ZIP 檔案到指定資料夾

如果想要對不同資料夾內許多檔案做壓縮處理,或是將 ZIP 內某個檔案取出
甚至只是想壓縮成 System.IO.Stream 資料流而不想儲存成檔案
FastZip 都無法處理
必須以 ZipOutputStream 類別來處理上述工作,建立整個機制卻不是那麼快

天秤寫了函式將 ZipOutputStream 類別包起來
提供單一函式呼叫就可以來處理上述的動作

函式使用如下
提供二個壓縮函式,六個解壓縮函式
使用方法

下載原始碼: FileEx.cs
下載 SharpZip 式庫及 FileEx.cs 檔案
SharpZip 加入參考,並加上 FileEx.cs 程式碼即可使用,以下為簡單的壓縮解壓縮範例

4 意見:

lin 提到...

您好 :
在百忙之中打擾您,我是 點部落 團隊的 Dotjum,
我們 點部落 http://www.dotblogs.com.tw 是一個 IT技術知識交流的園地,
我們希望讓每一位分享知識的朋友,透過 點部落 平台,將大家的知識與經驗收集起來,讓更多人都可以更容易的找到,
並且藉由回覆的討論方式,讓同樣領域的朋友可以給予肯定或是不同的看法及建議。

目前 點部落 提供許多功能,讓您在分享知識更方便,更容易的收藏您的知識,
像是 由您決定文章是否顯示網站特別主題首頁、離線編輯 (讓你圖文上稿更輕鬆)
訂閱關注主題討論 、技術主題團隊、文章附檔案 、個人標籤分類及尋找 、收藏文章 等等。

您可以透過 離線編輯 在撰寫原有 Blog 平台 (Xuite、樂多、天空、Blogspot、Live Space...等 ),
也同時能夠透過 Zoundry、Windows Live Writer 等 Blog 離線編輯軟體將文章發表至 點部落 。

目前在 點部落 上,陸陸續續有許多的朋友加入,
像是 瓶水相逢.Net 、 馬小玲 、孤影棧分舵 、強力鎯頭 VB BLOG 、強力鎯頭 VB BLOG、偉碩
AllenKuo、Angi、jeff377、puma、topcat、HUNGCHILIN的OFFICE專欄、Arashi的OFFICE專欄 等..目前都在 點部落 上。

我們希望創造出更好的IT知識技術分享環境,也成為每一個人的線上知識庫。

希望能邀請您一同建立專屬於IT技術的園地。
誠摯的邀請您參與 點部落 。
點部落團隊 Dotjum
完整HTML邀請函連結 http://www.dotblogs.com.tw/invitation.aspx

匿名 提到...

--------使用後出現以下錯誤---------
編譯器錯誤訊息: CS0234: 命名空間 'System' 中沒有型別或命名空間名稱 'Linq' (您是否遺漏了組件參考?)

using System.Linq;

搖擺天秤 提到...

請將 using System.Linq; 這行拿掉
因為天秤是用 Visual Sutdio 2008 和 .NET Framework 3.5
如果是 Visual Studio 2005 之前版本就不可以有 Linq 這個 namespace 了

鐵人 提到...

我也是用VS2008開發
但出現
編譯器錯誤訊息: CS0234: 命名空間 'System' 中沒有型別或命名空間名稱 'Linq' (您是否遺漏了組件參考?)


行 5: using System.Linq;
行 12: using System.Xml.Linq;

把行5跟行12註解掉就正常了
請問是IIS的ASP.NET版本不對的關係嗎?
但我最多只到2.0可以選,請問這樣正確嗎?
示意圖
謝謝