FileGetSize

获取文件的大小.

FileGetSize, OutputVar , Filename, Units

参数

OutputVar

用来保存获取的文件大小的变量名(文件大小向下取整到最近的整数).

Filename

目标文件名, 如果未指定绝对路径, 则假定在 %A_WorkingDir% 中. 如果省略, 则使用最内层文件循环的当前文件.

Units

如果使用此参数, 那么它会让返回结果使用的字节外的其他单位:
K = 千字节
M = 兆字节

错误处理

[v1.1.04+]: 此命令失败时会抛出异常. 想了解更多信息, 请参阅运行时错误.

如果遇到问题则 ErrorLevel 被置为 1, 否则为 0.

A_LastError 被设置为操作系统 GetLastError() 函数返回的结果.

备注

支持任意大小的文件(包括超过 4 GB 的文件), 对任意大小的文件都支持 Units 为字节.

如果目标文件为目录, 则报告操作系统看到的它的大小(在所有情况中可能都是零).

要计算文件夹及其所有文件的大小, 请参照此例:

SetBatchLines, -1  ; 让操作以最快速度运行.
FolderSize := 0
FileSelectFolder, WhichFolder  ; 提示用户选择文件夹.
Loop, %WhichFolder%\*.*, , 1
    FolderSize += A_LoopFileSize
MsgBox Size of %WhichFolder% is %FolderSize% bytes.

相关

FileGetAttrib, FileSetAttrib, FileGetTime, FileSetTime, FileGetVersion, 文件循环

示例

#1

FileGetSize, OutputVar, C:\My Documents\test.doc  ; 获取以字节为单位的文件大小.
FileGetSize, OutputVar, C:\My Documents\test.doc, K  ; 获取以千字节为单位的文件大小.