我有一個包含幾個文件的目錄。我想壓縮這個文件夾到一個zip或tar.gz文件。我如何在C#中完成他的工作?如何使用.NET壓縮目錄?
回答
您可以使用DotNetZip Library。它有相當豐富和有用的功能。
編輯:
string[] MainDirs = Directory.GetDirectories(DirString);
for (int i = 0; i < MainDirs.Length; i++)
{
using (ZipFile zip = new ZipFile())
{
zip.UseUnicodeAsNecessary = true;
zip.AddDirectory(MainDirs[i]);
zip.CompressionLevel = Ionic.Zlib.CompressionLevel.BestCompression;
zip.Comment = "This zip was created at " + System.DateTime.Now.ToString("G");
zip.Save(string.Format("test{0}.zip", i));
}
}
剛剛添加了一些示例代碼的答案,希望你不介意。 – 2010-02-10 12:03:53
在我以前的工作中,我們使用#ziplib。
考慮使用SharpZipLib。它支持C#中的GZip和ZIP壓縮。
有一個很好的教程here概述了你需要做什麼用SharpZipLib壓縮目錄。
這是一個good discussion,討論沒有任何第三方庫的可能性。我想你應該看看它。
這裏是一個樣本代碼large repository,可以幫助你在你的工作。好運..
,GZIP是微軟Framework 2.0的ONW的一部分ARD。 它在System.IO.Compression命名空間下稱爲GZipStream。
要使用此類壓縮目錄,您必須創建一個包含文件集合的可序列化類(例如Directory)。
Files類將包含文件名和文件流以從文件讀取字節。 一旦你在目錄上應用GZip,它將逐一讀取文件並將它們寫入GZipStream。
另一個預3.5的選擇是從J#使用壓縮實用程序。畢竟,.Net並不關心代碼最初編寫的語言;-)。
文章對如何做到這一點:
的問題是很老,因此是正確答案。
自2012年底以來的最佳答案是:使用.NET 4.5和包含的System.IO.Compression
和System.IO.Compression.ZipArchive
命名空間類。
之一,是許多例子中的鏈接,你收到,如果你在網上搜索: http://www.codeproject.com/Articles/381661/Creating-Zip-Files-Easily-in-NET
由於2014/2015 FF: 隨着羅斯林整個框架庫已作爲開源的,所以AFAI瞭解它,你可以自由地從4.5類中提取代碼(因爲它應該不是特定於系統的),並將它用作早期.NET框架的庫。也許這會比使用其他類提供一些許可優勢 - 但這必須由您來分析。
- 1. 如何壓縮內置.net壓縮類的目錄?
- 2. 如何使用GZipStream壓縮/解壓縮目錄?
- 3. 如何壓縮Ti.utils.base64encode並使用.Net方法解壓縮?
- 4. 使用.NET ZipArchive壓縮整個目錄以及額外信息
- 5. Python - 壓縮目錄
- 6. 壓縮子目錄
- 7. .NET使用壓縮和非壓縮數據壓縮文件
- 8. 如何使用PHP和目標目錄創建壓縮文件?
- 9. 使用.net 4 WCF壓縮
- 10. 使用PHP壓縮文件的目錄
- 11. 使用php在根目錄下壓縮
- 12. 如何在Squeak Smalltalk中壓縮目錄?
- 13. 如何壓縮NSData類別的目錄?
- 14. 如何壓縮目錄,同時在MATLAB
- 15. 如何壓縮.git目錄中的git
- 16. 解壓縮(解壓縮)由.net壓縮(解壓縮)的文件.net system.io.compression.gzipstream
- 17. 如何使用TrueZip獲取解壓縮的文件目錄
- 18. 如何使用wxWidgets遞歸壓縮目錄?
- 19. 如何使用System.IO.Compression僅壓縮當前目錄
- 20. 如何使用Python壓縮目錄中的某些文件?
- 21. 如何使用ZipKit在iOS中壓縮目錄?
- 22. 壓縮文件和目錄
- 23. PNG壓縮.net
- 24. 如何在.NET中解壓縮使用Lempel-Ziv Haruyasu算法壓縮的字節?
- 25. 使用PHP壓縮和解壓目錄及其所有文件
- 26. 解壓後如何壓縮整個目錄保持其結構?
- 27. 如何壓縮Xcode項目?
- 28. ProtoBuf-Net已壓縮的壓縮?
- 29. 使用特定目錄作爲根目錄壓縮目錄的命令
- 30. 如何使用c#壓縮消息並使用javascript解壓縮?
Duplicate:http://stackoverflow.com/questions/384955/best-easiest-way-to-create-zip-archive-in-net – 2010-02-12 08:52:57