Autor Beitrag
mcbrunox
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 92



BeitragVerfasst: Do 06.02.03 19:32 
kann ich das ? mit assignfile gehts mal nich
bei openfile find ich nichts wie ich die dateigrösse ermitteln kann,
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Do 06.02.03 19:36 
FileSize, z.B.
In dem Fall muss die gewünschte Datei vorher zugewiesen werden.
Ein Beispiel spare ich mir; ´s steht nämlich eins in der Delphi-Hilfe (F1).
mcbrunox Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 92



BeitragVerfasst: Do 06.02.03 21:07 
finds ja lustig...ne will bei meinem programm zur laufzeit die dateigrösse ermitteln.
bei assign gibts ne fehler meldung weil die datei ja schon ausgeführt wird
und bei fopen ebenfalls - bis jetzt zumindest
mcbrunox Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 92



BeitragVerfasst: Do 06.02.03 21:25 
habs mit findfirst gmacht
thX
smiegel
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 992
Erhaltene Danke: 1

WIN 7
D7 Prof., C#, RAD XE Prof.
BeitragVerfasst: Do 06.02.03 22:22 
Hallo,

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
function GetDateiGroesse(const aFileName:String):Int64; 
var sh:THandle; 
    wd:TWin32FindData; 
begin 
  sh:=FindFirstFile(PChar(ExpandFileName(aFileName)), wd); 
  try 
    if (sh<>INVALID_HANDLE_VALUE) then 
      Result:=(wd.nFileSizeHigh*MAXDWORD)+wd.nFileSizeLow else Result:=0; 
  finally 
    Windows.FindClose(sh); 
  end; // try 
end; // GetDateiGroesse

_________________
Gruß Smiegel
Ich weiß, daß ich nichts weiß, aber ich weiß mehr als die, die nicht wissen, daß sie nichts wissen. (Sokrates)
DaRkFiRe
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 526

WinXP Home & Professional
C, C++, Delphi
BeitragVerfasst: Fr 07.02.03 00:14 
wie wär's mit...

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
function getFileSize(sFileName:STRING):LONGINT;
var rfs:tfilestream;
begin
  Result:=-1;
  try
    rfs:=tfilestream.create(sFilename, fmopenread or fmsharedenywrite);
    result:=rfs.size;
    rfs.free;
  except
  end;
end;

_________________
Lang ist der Weg durch Lehren - kurz und wirksam durch Beispiele! Seneca
opfer.der.genauigkeit
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 754
Erhaltene Danke: 1



BeitragVerfasst: Fr 07.02.03 10:06 
Probiers mal mit dem Befehl SizeOf(Dateiname).
Das Ergebnis ist dann die Anzahl der Bytes.

_________________
Stellen Sie sich bitte Zirkusmusik vor.
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 07.02.03 10:18 
Schon mal in die Hilfe gekuckt:
sizeof
Zitat:

Returns the number of bytes occupied by a variable or type.


Moderiert von user profile iconTino: Beitrag geändert.
opfer.der.genauigkeit
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 754
Erhaltene Danke: 1



BeitragVerfasst: Fr 07.02.03 10:55 
Hm Luckie... ich sag nur was mir einfällt...

Außerdem müßte es doch gehen wenn ich:
ausblenden Quelltext
1:
2:
3:
4:
5:
var
  F : file of ...
begin
  .... .... sizeof(f);
end;


Moderiert von user profile iconTino: Code-Tags hinzugefügt.
Moderiert von user profile iconTino: Beitrag geändert.

_________________
Stellen Sie sich bitte Zirkusmusik vor.
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 07.02.03 11:03 
OK, wenn du meinst:

Die Aussage ist falsche weil, du damit die Größe des Datentyps bekommst und nichts anderes. In diesem Fall bekommst du die Größe des Datentyps TFile oder was du da angibst.

Moderiert von user profile iconTino: Beitrag geändert.


Zuletzt bearbeitet von Luckie am Fr 07.02.03 11:11, insgesamt 1-mal bearbeitet
DaRkFiRe
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 526

WinXP Home & Professional
C, C++, Delphi
BeitragVerfasst: Fr 07.02.03 13:59 
Muss Luckie auch zustimmen - SizeOf dient lediglich dazu, die interne Größe der verwendeten Variablen zu ermitteln, um sie z.B. in eine Datei schreiben zu können (in Win 3.xx ist ein Integer eben nur 16 Bit [2 Bytes] lang, in Win 9x / ME 32 Bit [4 Bytes] lang und in NT XP kann er sogar 64 Bits [8 Byte]) groß sein. Also SizeOf dient keinesfalls der Dateigrößenermittlung. FileSize(F) schon, wobei F vom Typ File oder TextFile - dabei müsste vorher F per AssignFile(F,DateiName) der Variable F einem Dateinamen zugewiesen werden...

_________________
Lang ist der Weg durch Lehren - kurz und wirksam durch Beispiele! Seneca
opfer.der.genauigkeit
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 754
Erhaltene Danke: 1



BeitragVerfasst: Fr 07.02.03 15:32 
Jo, Luckie hat auch recht. :)

_________________
Stellen Sie sich bitte Zirkusmusik vor.