要查找文件的长度(以字节为单位),您通常会使用FileInfo.Length
或System.IO.Stream.Length
(有区别吗?)。两者都是long类型,即System.Int64,因此maximal possible value是:
9 223 372 036 854 775 807
现在看来一些文件系统,如NTFS5或Microsoft的弹性文件系统(ReFS)理论上允许最大文件大小超过Int64范围 - 根据this source,ReFS将最大文件大小限制为2 ^ 64- 1个字节,等于(出于可读性目的):
18 446 744 073 709 551 615
在这种情况下如何确定文件大小 - 无论假设是什么 - 它是否会影响正常的Stream操作(例如使用读/写方法等)?
答案 0 :(得分:4)
在这种情况下如何确定文件大小
.NET框架没有任何内置功能。当文件变大时,FileInfo.Length
和System.IO.Stream.Length
都会抛出异常。您将不得不直接调用Windows API(如果Windows API当前支持此功能)。