我需要一种方法将GZipStream写入字符串。
我正在使用:
GZipStream Decompress = new GZipStream(inFile, CompressionMode.Decompress)
我尝试了几种方法,但是想不出来。 有人有什么想法吗?
非常感谢, Brett
我需要一种方法将GZipStream写入字符串。
我正在使用:
GZipStream Decompress = new GZipStream(inFile, CompressionMode.Decompress)
我尝试了几种方法,但是想不出来。 有人有什么想法吗?
非常感谢, Brett
GZipStream
,因此你需要从里面读取数据。最简单的方法是使用一个 StreamReader
来包装 GZipStream
,该类具有一个 ReadToEnd
方法,返回一个字符串。
例如:
string res;
using (var decompress = new GZipStream(inFile, CompressionMode.Decompress))
using (var sr = new StreamReader(decompress)) {
res = sr.ReadToEnd();
}
(using
语句确保inFile
被关闭,并释放任何其他资源。)
NB 这假定inFile
包含以UTF-8或UTF-16编码的文本。二进制内容或其他文本编码可能会导致问题(您可以使用不同的StreamReader
构造函数覆盖编码)。