这是获取文件大小的正确方法吗?

Posted

技术标签:

【中文标题】这是获取文件大小的正确方法吗?【英文标题】:Is this the correct way to get file's size? 【发布时间】:2011-09-22 10:09:11 【问题描述】:

我已检索所有文件名并将其存储到字符串数组中。以下是代码:

Dim fi As System.IO.FileInfo
Dim file_size As Int32
'all file names are stored in Files string array
Dim Files() As String
Dim CurrentFile As String

For Each CurrentFile In Files
    fi = New System.IO.FileInfo(CurrentFile)
    file_size = fi.Length
Next

这是获取每个文件大小的正确方法吗?有没有更好的方法来获取文件大小?我有数千个文件,我正在寻找更好的方法。

【问题讨论】:

是的,您需要使用FileInfo 获取此类信息 问题是什么? MSDN 完美地说“FileInfo.Length 属性 - 获取当前文件的大小,以字节为单位。” @sll:最初我认为,为每个文件创建一个新的 FileInfo 只是为了检索其大小似乎很浪费。所以问问是否有更好的方法来获取每个文件的大小 使用 FileInfo 即可。但是在您的示例中使用“文件”相当混乱 - 请使用一个文件名来保持您的示例简单。 我会先在 ANSI 和 UNICODE 文件上尝试它,以确保双字节文件。你知道,字节大小不是 unicode 的大小。如果我在这台电脑上有 Studio,我自己会尝试的。 【参考方案1】:

是的,FileInfo 类的 Length 属性为您提供文件的大小(以字节为单位)。

FileInfo Description MSDN

【讨论】:

以上是关于这是获取文件大小的正确方法吗?的主要内容,如果未能解决你的问题,请参考以下文章

使用 Java 7 新 IO 获取文件/目录大小

录音获取文件大小

这是从片段中获取字符串资源的正确方法吗?

这是将 Twitter 集成到 android 中的正确方法吗?谁能告诉我如何获取个人资料图片网址?

java有效地获取文件大小

java有效地获取文件大小