[fpc-pascal] Getting size of file without opening it?
Michael Van Canneyt
michael at freepascal.org
Fri Jul 24 00:29:10 CEST 2020
On Fri, 24 Jul 2020, Bo Berglund via fpc-pascal wrote:
> I am using FindAllFiles in order to list the files in a directory and
> it works fine.
>
> But I also need the size and timestamp of the file so I searched the
> net for it.
>
> What I found was:
>
> var T: TDateTime;
> T := FileDateTodateTime(FileAge(filename));
>
> But FileSize() needs a file argument to an open file!
>
> This is not what I want, I may not even be allowed to open the file.
>
> So is there a *cross-platform* way to retrieve the size of the files
> too?
uses sysutils;
Function GetFileSize(aFileName : String) : Int64;
Var
Info : TSearchRec;
begin
If FindFirst(aFileName,0,Info)=0 then
Result:=Info.SIze
else
Result:=-1;
FindClose(Info);
end;
Michael.
More information about the fpc-pascal
mailing list