Microsoft .NET終于提供了一個通用的Zip庫

openkk 12年前發布 | 8K 次閱讀 .NET

.NET Framework 與 Zip 文件格式間總是存在著一種不可思議的關系。在一開始,.NET 提供了對 Zip 文件的支持,但其實現方式卻是大多數人都沒有意識到的。很久之前被拋棄的J#編程語言包含了 Java 的 java.util.zip 包。在 2003 年 Ianier Munoz 發表的一篇文章中介紹了如何在 C# 中使用J# Zip 庫

.NET 2.0 在這個問題上則出現了明顯的倒退。那時,J#已經被開發者社區所遺忘,提供給我們的則是幾乎毫無用處的 IO.Compression 命名空間。DeflateStreamGZipStream 類只提供了單向、基于流的壓縮。此外,他們還缺乏處理與多種文件檔案如 Zip 相關的元數據的能力。

2006年,微軟通過 ZipPackage 類提供了一個異常笨拙的處理 Zip 文件的 API。創建該 API 的主要目的在于支持 Open XML Paper Specification(XPS)。XPS 最初被看作是與 Adobe PDF 文件格式進行直接競爭的一個嘗試,但后來這些努力還是被放棄了。如今的 XPS 主要用于 Windows 的假脫機打印,用于替換基于 GDI 的 WinPrint(如果打印機支持的話)。

對于 .NET 4.5 來說,我們終于看到了一個值得期待的用于處理 Zip 文件的內建 API。雖然現在談論 ZipArchive 類是否是 DotNetZip 等庫的競爭者還為時尚早,但它至少向那些由于許可問題而無法使用開源庫的開發者提供了一些可用的東西。Tugberk Ugurlu 研究并介紹了如何使用 .NET 4.5 中的 ZipArchive

查看英文原文:Microsoft .NET Finally Offers a General Purpose Zip Library

來自: InfoQ

 本文由用戶 openkk 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!