你如何获得在C#中的文件大小?
我需要一种方法来获取使用C#文件的大小,而不是磁盘上的大小。 这怎么可能?
目前我有这个循环
foreach (FileInfo file in downloadedMessageInfo.GetFiles()) { //file.Length (will this work) }
这将返回磁盘的大小或大小?
FileInfo.Length
将返回文件的长度,以字节为单位(不是磁盘上的大小),所以这是你在找什么,我想。
如果你已经有一个文件path作为input,这是你需要的代码:
long length = new System.IO.FileInfo(path).Length;
FileInfo.Length
将执行这个技巧(按照MSDN,“当前文件的大小(以字节为单位)”。)MSDN上常见的I / O任务有一个很好的页面 。
MSDN FileInfo.Length说,它是“当前文件的大小以字节为单位”。
我典型的谷歌search这样的东西是: msdn FileInfo
它返回文件内容的长度
如果将文件移动到另一个文件系统(FAT16,NTFS,EXT3等),则磁盘上的大小可能不同。
正如其他答复者所说,这将给你的字节大小,而不是磁盘上的大小。
我用File.ReadAllBytes(@"D:\\testPA.txt").Length
得到文件的大小File.ReadAllBytes(@"D:\\testPA.txt").Length