FileSize, welcher Unterschied zu diesem Verfahren und was ist besser zu verwenden?
Über Größe einer Datei erhalten, habe ich diese zwei Funktionen:
function GetFileSize1(const FileName: TFileName): Int64;
var
iTmp: Int64;
SearchRec: TSearchRec;
begin
iTmp := -1;
if FindFirst(FileName, faAnyFile, SearchRec) = 0 then
begin
iTmp := SearchRec.Size;
System.SysUtils.FindClose(SearchRec);
end;
Result := iTmp;
end;
Und:
function GetFileSize2(const FileName: TFileName): Int64;
var
FileStream: TFileStream;
begin
FileStream := TFileStream.Create(FileName, fmOpenRead);
try
Result := FileStream.Size;
finally
FileStream.Free;
end;
end;
Was ist der Unterschied in der Praxis? Beide liefern natürlich dasselbe Ergebnis, aber was ist zuverlässiger, schneller, sicherer? Oder besser, was ist die bevorzugte Verwendung? Erste oder zweite? Vielen Dank.