【发布时间】:2010-12-16 13:53:32
【问题描述】:
我知道以前在 Stackoverflow 上有人问过这个问题,但找不到解释。
当我尝试从压缩字节数组中读取字符串时,第一次尝试得到一个空字符串,第二次我成功并得到了字符串。
代码示例:
public static string Decompress(byte[] gzBuffer)
{
if (gzBuffer == null)
return null;
using (var ms = new MemoryStream(gzBuffer))
{
using (var decompress = new GZipStream(ms, CompressionMode.Decompress))
{
using (var sr = new StreamReader(decompress, Encoding.UTF8))
{
string ret = sr.ReadToEnd();
// this is the extra check that is needed !?
if (ret == "")
ret = sr.ReadToEnd();
return ret;
}
}
}
}
感谢所有建议。 - 维克多·卡塞尔
【问题讨论】:
-
我认为您不需要检查,它看起来多余。
标签: c# streamreader