Hi ich habe folgendes problem
ich kann in die datei richtig reinschreiben mit fprintf
der eintrag sieht dann so aus in jeder zeile
;;;;keiner
aber wie kann ich den scheiß jetzt wieder richtig auslesen ich habs mit fscanf probiert
aber er setzt einfache die ganze zeile beim Titel rein und das in jeder zeile
buecherei ist eine struktur
ANZAHL ist eine define am anfang
void laden(void)
{
int i=0;
FILE * datei_zeiger;
datei_zeiger=fopen("buecherei.txt","r");
for (i=0;i<ANZAHL;i++)
{
fscanf(datei_zeiger, "%s;%s;%s;%s;%s\n",buecherei.Titel,buecherei.Autor,buecherei.ISBN,buecherei.Datum,buecherei.Ausleiher);
}
fclose(datei_zeiger);
}
ich habe es auch schon mit %[^;] hinter den %s probiert aber hat nichts gebracht
auch wenn ich Titel Autor ISBN Datum und ausleiher eintrag habe ich keinen erfolg
wenn jemand lösungsvorschläge hat wäre ich sehr dankbar
Danke
edit:
habs jetzt geschafft das er den Titel richtig anzeigt aber bei auto hört er beim leerzeichen auf
"%[^;];%s;%[^;];%s;%[^;];%s;%[^;];%s;%[^;];%s;\n"
das steht jetzt drin
warum macht der nur des erste richtig
das ganze proggramm gibts hier
http://people.freenet.de/macfrosty/buecherei.c
um den fehler nun zu simulieren
programm kompieren
97 standart herstellen
98 daten anzeigen lassen
6 daten speichern in buecherei.txt
99 programm beenden und speicher leeren
programm starten
95 daten laden
98 daten anzeigen lassen und hier sieht man den fehler wenn da er ein strichkomma immer in die nächste zeile tun sollte
ich kann in die datei richtig reinschreiben mit fprintf
der eintrag sieht dann so aus in jeder zeile
;;;;keiner
aber wie kann ich den scheiß jetzt wieder richtig auslesen ich habs mit fscanf probiert
aber er setzt einfache die ganze zeile beim Titel rein und das in jeder zeile
buecherei ist eine struktur
ANZAHL ist eine define am anfang
void laden(void)
{
int i=0;
FILE * datei_zeiger;
datei_zeiger=fopen("buecherei.txt","r");
for (i=0;i<ANZAHL;i++)
{
fscanf(datei_zeiger, "%s;%s;%s;%s;%s\n",buecherei.Titel,buecherei.Autor,buecherei.ISBN,buecherei.Datum,buecherei.Ausleiher);
}
fclose(datei_zeiger);
}
ich habe es auch schon mit %[^;] hinter den %s probiert aber hat nichts gebracht
auch wenn ich Titel Autor ISBN Datum und ausleiher eintrag habe ich keinen erfolg
wenn jemand lösungsvorschläge hat wäre ich sehr dankbar
Danke
edit:
habs jetzt geschafft das er den Titel richtig anzeigt aber bei auto hört er beim leerzeichen auf
"%[^;];%s;%[^;];%s;%[^;];%s;%[^;];%s;%[^;];%s;\n"
das steht jetzt drin
warum macht der nur des erste richtig
das ganze proggramm gibts hier
http://people.freenet.de/macfrosty/buecherei.c
um den fehler nun zu simulieren
programm kompieren
97 standart herstellen
98 daten anzeigen lassen
6 daten speichern in buecherei.txt
99 programm beenden und speicher leeren
programm starten
95 daten laden
98 daten anzeigen lassen und hier sieht man den fehler wenn da er ein strichkomma immer in die nächste zeile tun sollte