Veröffentlicht 19. Oktober 200321 j Mein Problem ist folgendes: Mein Programm bekommt beim Start zwei Dateien übergeben, und in einem ersten Test soll ich überprüfen, ob die Datei überhaupt vorhanden ist. Das hat ja noch funktioniert. In einem zweiten Test soll ich aber noch überprüfen ob die Datei auch gefüllt ist, und dabei hapert es jetzt.... Gibt es einen bestimmten Befehl dafür, oder kann mir jemand sagen, was ich für Möglichkeiten habe das zu überprüfen? Fledermausi
19. Oktober 200321 j Bei CFile gibts die Funktion getlength(); mit fseek() kann man auch nachschauen, wo die Endposition liegt.
19. Oktober 200321 j Hallo, dafür gibt es "stat and friends": #include <sys/types.h> #include <sys/stat.h> #include <unistd.h> int main(int argc, char **argv) { struct stat buf; stat(argv[1], &buf); printf("Dateigroesse=%d Bytes\n", buf.st_size); } [/php] (Achtung, keinerlei Fehlerprüfung im Code!!!) Nic
20. Oktober 200321 j Such mal in der hilfe nach find_t das kann mal wunderschön einbauen. Z.B: #define Fileerror -1 int datei; int dateiin; struct find_t find; ... ... .. Datei=_dos_findfirst(Dateipfad,_A_Normal,&find); Dateiin=sopen(Dateipfad,O_RDONLY,weitere Argumente); if (dateiin!=Fileerror){ Dateilaenge=(int)find.size); if (Dateilaenge=0) { ... ... }else{ ... ... } } [/PHP] (Wurde nicht auf Fehler überprüft) MVG need-some-blood
21. Oktober 200321 j Hallo, Nein, geht nicht. Ein Nullpointer als Return-Wert (beim fopen) bedeutet nur, dass die Datei nicht geöffnet werden konnte. Es ist ein großer Unterschied, ob eine Datei existiert und leer ist oder nicht existiert! Nic
11. November 200321 j getlength() wollte überhaupt nicht laufen, aber mit nic_power's Lösung hats dann funktioniert! Danke schön!
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.