Entwickler-Ecke

Dateizugriff - ...


TheUnknown - Mo 24.06.02 09:41
Titel: ...
...


Klabautermann - Mo 24.06.02 10:29

Hallo,

mit function FileSize(var F): Integer; bekommst du die Anzahl der Blöcke einer Datei wierder. Wenn du f als FILE OF Byte deklarierst entspricht das der Anzahl in Byte.

Alternativ kannst du noch über FindFirst gehen.

Gruß
Klabautermann


TheUnknown - Mo 24.06.02 11:11

...


Klabautermann - Mo 24.06.02 11:32
Titel: Re: JAU, GEHT!!!! SUUUUUUUUUUUUPER!
TheUnknown hat folgendes geschrieben:
So geht's - und Danke Klabautermann...


Quelltext
1:
2:
3:
4:
5:
6:
7:
function DateiGroesse : String;
var SR : TSearchRec;
    FileAttrs : Integer;
begin
  if FindFirst('C:\AUTOEXEC.BAT', FileAttrs, sr) = 0
  then Result := FormatFloat('#,#0', SR.Size);
end;


Freut mich das es klappt aber du machst ein Speicherleck.
Erweitere deine Funktion folgendermaßen:

Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
function DateiGroesse : String;
var SR : TSearchRec;
    FileAttrs : Integer;
begin
  if FindFirst('C:\AUTOEXEC.BAT', FileAttrs, sr) = 0 then begin
    Result := FormatFloat('#,#0', SR.Size);
    FindClose(sr); // Wichtig
  end;
end;


FindClose gibt den mit FindFirst zugewiesenen Speicher frei.

Gruß
Klabautermann


Pit - Mo 24.06.02 12:03
Titel: Re: JAU, GEHT!!!! SUUUUUUUUUUUUPER!