Datei::Untersegmente einlesen...
-
Servus,
EDIT: Problem gelöst, fgetpos und fsetpos halfen weiter... Danke trotzdem
ich komme gerade an einer Stelle nicht mehr weiter... folgenden Datensatz hab ich
Keyword1 Typ1 001 Daten 002 Daten 003 Daten 004 Daten Keyword1 Typ2 001 Daten 002 Daten 003 Daten 004 Daten Keyword2 Typ1 001 Daten 002 Daten 003 Daten 004 Daten usw.
Ich habe das Problem, daß ich nicht das "richtige" Untersegment von Keyword Typ2 (ist ein Integer und ist nicht festgelegt !) erreiche, folgenden Quellcode benutze ich schonmal um erfolgreich nach "Keyword" aufzuschlüsseln.
FILE *File1,*File2; char *Buffer1, *Buffer2; char FileBuffer1[BUFSIZ+1]; char FileBuffer2[BUFSIZ+1]; char CmpBuffer[3]; File1=fopen(MyFile,"r"); File2=fopen(MyFile,"r"); while (fgets(FileBuffer1,sizeof(FileBuffer1),File1)) { Buffer1=FileBuffer1; if (strncmp(Buffer1,"Keyword",strlen(Keyword))==0) { while (fgets(FileBuffer2,sizeof(FileBuffer2),File2)) { Buffer2=FileBuffer2; sprintf(CmpBuffer,"%03d",counter); if (strncmp(Buffer2,CmpBuffer,6)==0) { printf("Gefunden "); printf(Buffer1); printf(" zu "); printf(Buffer2); counter++; } } counter=0; } }
An sich weiß ich auch, daß nach fgets(File2) der Zeiger auf EOF steht, aber wie springe ich an die "richtige" Stelle wieder zurück ? Mit fseek springe ich, aber wie finde ich die Bytelänge heraus für fseek(File2,Bytelänge,SEEK_CUR) ? Strlen lieferte mir keine Erfolge, wahrscheinlich auch weil ich mich zu dusselig anstelle
Winn