FileGetSize

获取文件的大小.

FileGetSize, OutputVar , Filename, Units

参数

OutputVar

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

Filename

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

Units

如果为空或省略, 则默认为 B. 否则, 请指定以下字母之一, 将导致以特定单位返回结果:

错误处理

[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, 文件循环

示例

读取以字节为单位的大小, 并将其存储在 OutputVar.

FileGetSize, OutputVar, C:\My Documents\test.doc

读取以千字节为单位的大小, 并将其存储在 OutputVar.

FileGetSize, OutputVar, C:\My Documents\test.doc, K