2008-09-16 23 views

回答

12

要進行壓縮,請查看System.IO.Compression名稱空間並加密,請參閱System.Security.Cryptography

+0

注意:System.IO.Compression非常適合壓縮單個文件。它不會將多個源文件壓縮到一個zip壓縮文件中。 – 2008-11-07 15:37:49

+2

我一直在使用System.IO.Compression(.Net 4.6)中的ZipFile.CreateFromDirectory,它從指定目錄中的文件創建一個zip存檔。 – 2015-07-09 05:38:42

1

GZipStream類是處理壓縮的本機方式。

至於加密,有manyways這樣做,其中大部分在System.Security命名空間。它們可以鏈接(加密壓縮流或壓縮加密流)。

0

我不知道,如果步驟可以合併,但.NET有很好的支持基本密碼。這是一個article on it

0

如果它們不能被合併,先加密壓縮做。壓縮已經加密的文件將導致較差的壓縮比,因爲大量的冗餘被刪除。

1

Chilkat提供用於壓縮和加密的.NET庫。

5

我知道這個問題已經很老了,但我必須補充我的兩分錢。

首先,一些定義:

  • 郵編:存檔格式重組文件和文件夾到一個單一的文件,和可選的加密數據。
  • Deflate:Zip文件中用來壓縮數據的壓縮算法之一。最受歡迎的一個。
  • GZip:單個文件使用deflate壓縮,具有小的頁眉和頁腳。

現在,System.IO.Compression確實不是做Zip歸檔。它會壓縮放縮gzip壓縮,因此會將單個數據塊壓縮到另一個單一數據塊中。

所以,如果你正在尋找一個存檔格式,可以組許多文件和文件夾,你需要郵編庫,例如:

如果您只需要壓縮和加密單個數據塊,請查看System.IO.CompressionSystem.Security.Cryptography