C 之 GZipStream壓縮流

2021-08-21 10:18:29 字數 1021 閱讀 5689

第一次接觸,對於gzipstream的兩個方法有點疑惑:

void gzipstream.write(byte array,int offset,int count)

從指定的位元組陣列中將壓縮的位元組寫入基礎流

這樣看解釋是先要呼叫這個方法,通過gzipstream讀取後在壓縮嗎?

int gzipstream.read(byte array,int offset,int count)

將若干解壓的位元組讀入指定的位元組陣列

接下來看**:

using system;

using system.collections.generic;

using system.io;

using system.io.compression;

using system.linq;

using system.text;

using system.threading.tasks;

namespace _壓縮流

/// /// 壓縮

///

/// 未壓縮的檔案路徑

/// 壓縮後資料存放的檔案路徑

private static void compress(string source, string target)}}

}console.writeline("壓縮成功");

}/// /// 解壓

///

/// 被解壓的檔案

/// 解壓後資料存放的路徑

public static void decompress(string source, string target)}}

}console.writeline("解壓成功");

}}}執行結果,原始檔經過壓縮大小只有120位元組,而解壓後,原始檔與解壓後txt的大小一致

壓縮 解壓縮流GZipStream

如果要在壓縮過程中檢查錯誤或要與其他作業系統所用程式共享壓縮資料,則要是用gzipstream類。gzipstream類包含是用gzip資料格式進行壓縮和解壓縮檔案的方法,該類不能用於解壓縮大於4gb的檔案。一 屬性 basestream 獲取對基礎流的引用。canread 獲取乙個值,該值指示流是...

C 壓縮與解壓縮流類 GZipStream 的使用

在使用 gzipstream 進行壓縮的時候,在最後必須呼叫 close 方法,否則會發現解壓縮後少乙個位元組,當壓縮的檔案小於4kb時,解壓縮到檔案長度為0.下面為乙個完整的壓縮與解壓縮檔案的 以做參考 private void button1 click object sender,eventa...

GZipStream 壓縮與解壓資料

簡介 此類表示 gzip 資料格式,它使用無失真壓縮和解壓縮檔案的行業標準演算法。這種格式包括乙個檢測資料損壞的迴圈冗餘校驗值。gzip 資料格式使用的演算法與 deflatestream 類的演算法相同,但它可以擴充套件以使用其他壓縮格式。這種格式可以通過不涉及專利使用權的方式輕鬆實現。gzip ...