【发布时间】:2011-05-03 00:08:53
【问题描述】:
你好!我正在尝试使用文件流读取一个 150mb 的文件,但每次我这样做时,我得到的都是:|zl 而不是整个流。请注意,其中包含一些特殊字符。
有人知道问题出在哪里吗?这是我的代码:
using (FileStream fs = File.OpenRead(path))
{
byte[] buffer = new byte[fs.Length];
fs.Read(buffer, 0, buffer.Length);
extract = Encoding.Default.GetString(buffer);
}
编辑:
我试图阅读所有文本,但它仍然返回相同的四个字符。除了这几个文件之外,它在任何其他文件上都可以正常工作。当我使用读取所有行时,它只会获取第一行。
【问题讨论】:
-
您确定该文件是文本文件吗?如果
File.ReadAllText只返回四个字符,那么最好确定文件的其余部分不是文本。或者我想可能是path没有指向您认为它指向的文件。检查fs.Read的返回值,确保您实际读取的数据与您认为的一样多。