假设以下代码:
Stream file = files[0].InputStream;
var FileLen = files[0].ContentLength;
var b = new BinaryReader(file);
var bytes = b.ReadBytes(FileLen);
如果我上传 10 条记录(257 字节)的 CSV 文件,BinaryReader 会用“0”填充字节数组。
我还编写了一个循环来逐步执行 BinaryReader 的 ReadByte 方法,在循环的第一次迭代中,我收到了以下异常:
无法读取超出流末尾的内容
当我将 CSV 文件增加到 20000 条记录时,一切正常。
那么问题是,为什么这会发生在较小的文件上,是否有一种解决方法允许对较小的文件进行二进制读取。