jam*_*ams 11 c# size methods file filestream
FileStream的读/写方法只能integer取值为length.但是FileStream对象的返回长度为long.在这种情况下,如果文件大小大于integer值(大约超过2GB),该怎么办?然后FileStream的读/写方法如何处理long值.
Jon*_*eet 13
然后你用多个块读写.无论如何CLR对任何特定对象的大小都有限制(即使在64位CLR上也大约2GB IIRC),所以你不能有足够大的字节数组来使它成为一个问题.
无论如何,你总是应该在读取时循环,因为你不能保证读取调用将读取你请求的字节数,即使有更多数据要来.
编辑:阅读大块:
byte[] buffer = new byte[1024 * 32];
int bytesRead;
while ((bytesRead = stream.Read(buffer, 0, buffer.Length)) > 0)
{
// Use the data you've read
}
Run Code Online (Sandbox Code Playgroud)
大块写作取决于你写的东西......很难抽象地谈论它.
| 归档时间: |
|
| 查看次数: |
15909 次 |
| 最近记录: |