function GetDirectorySize(const ADirectory: string): Integer;
var
SearchRec: TSearchRec;
Ret: Integer;
begin
Result := 0;
Ret := FindFirst(ADirectory + '\*.*', faAnyFile, SearchRec); // 查找成功返回0 '\*.*'通配符 匹配哪些文件
if Ret = NO_ERROR then
begin
repeat
if (SearchRec.Name <> '.') and (SearchRec.Name <> '..') then
begin
//showmessage(ADirectory + '\' + SearchRec.Name);
if (SearchRec.Attr) and (faDirectory) <> 0 then //判断是不是目录
GetDirectorySize(ADirectory + '\' + SearchRec.Name)
else //是文件
Inc(Result,SearchRec.Size);
end;
Ret := FindNext(SearchRec);
until Ret <> NO_ERROR;
end;
end;
Delphi 计算指定目录下所有文件的大小(遍历文件夹所有文件及目录)
最新推荐文章于 2020-07-26 10:45:08 发布