002
23.04.2007, 23:15 Uhr
newbeee
|
so, hier erstmal noch etwas quellcode
C++: |
DIR *dir; struct dirent *dirzeiger; struct stat attribut; char dwd[128],zeile[256]; int i; double filesize,actime,oldfilesize,oldactime; //***Überprüfung auf neue dwd-Datei****** dir=opendir("data/dwddata"); // Test
for(i=0;i<2;i++) dirzeiger=readdir(dir); while((dirzeiger=readdir(dir)) != NULL) { sprintf(dwd,"%s%s","data/dwddata",(*dirzeiger).d_name); stat(dwd, &attribut); filesize=attribut.st_size; actime=attribut.st_atime; printf("%s\n",dwd); printf("%d\n,%d\n",actime,filesize); } closedir(dir); FILE *dwdcheck; dwdcheck=fopen("data/dwdcheck.dat","r"); fgets(zeile,256,dwdcheck); oldfilesize=atof(zeile); fgets(zeile,256,dwdcheck); oldactime=atof(zeile); fclose(dwdcheck); printf("%d\n,%d\n",oldactime,oldfilesize); if (oldactime!=actime && oldfilesize!=filesize) { FILE *dwdcheck; dwdcheck=fopen("data/dwdcheck.dat","w"); fprintf(dwdcheck,"%f\n%f\n",filesize,actime); fclose(dwdcheck); subgribreader(dwd); }
|
eine sache hab ich schon geändert. und zwar actime = attribut.st_atime; was da vorher stand, war für linux (mtime) und ich brauche für dos(atime).
das programm soll das verzeichnis "data/dwddata" öffnen und die dateiattribute der dort enthaltenen datei "dwd" in actime (letzte änderung der datei) und filesize (größe der datei) schreiben. dann soll er in die datei "dwdcheck.dat" schauen und oltactime und oldfilesize auslesen. wenn diese unterschiedlich zu actime und filesize sind(also "dwd" sich verändert hat), soll er die funktion subgribreader ausführen.
leider macht es das nicht. obwohl der sich die attribute verändert haben.
kann jemand einen fehler erkennen?
vielen dank
newbeee Dieser Post wurde am 24.04.2007 um 08:07 Uhr von FloSoft editiert. |