-
Göße einer Datei
Dateien öffnen / lesen schön und gut aber ich hab noch nie etwas gesehen um die Größe einer Datei in C festzustellen. Gibt es eine einfache Möglichkeit?
Schon mal Danke im Voraus
-
Leicht aber leider auch etwas unschön:
mit einem
fseek(FILE *stream, 0, SEEK_END); // an den Schluß gehen
dann mit sich mit einem
long unsigned int datei_laenge = ftell(FILE *stream); // die Größe holen!
Wie das bei "großen" Dateien (>4 GB) anzupassen ist, steht in der c't 10/00 auf Seite 256
Sion
-
Man verwendet eigentlich "fstat"... (man 2 fstat)
Thomas
-
Danke!
Mit den grossen Dateien ist kein Problem, da ich nur prüfen muss ob meine Mail-Spool-Datei leer ist.
-
Hi,
Du solltest bei solchen Problemen aus einem ganz anderem Grund nach was ähnlichem suchen, dann findest Du eine einfache Lösung:
(erging mir gerade so...)
test -s /var/spool/mail/root
liefert in einem Shell-Script als $? zurück, ob die Datei größer als 0 Byte ist. Ist zwar kein C, aber schöner ;-)
Sion
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen