Hallo,
ich möchte aus einer Datei Daten einlesen und in einer strcut speicher.
Als Entwicklungsumgebung kommt der BCB6 zum Einsatz... Programmiersprache also C++.
Die Daten wären z.B.:
Der entsprechende Code schaut so aus.
Eingelesen wird mit "fscanf" und Ausgabe in einer ListBox. Soweit funktioniert das auch problemlos.
Allerdings möchte ich nun auch gerne Strings in der Datei haben.
z.B.:
Jedoch wird das Trennzeichen ',' einfach ignoriert.
Bei der Ausgabe von String s_1 wird immer die komplette Zeile ausgegeben, s_2 und s_3 bleiben leer.
Wo liegt denn da das Problem?
Danke.
gruß,
martin
(Bitte nicht über die teilweise nicht so idealen Variablennamen meckern, die sind erstmal nur zum testen so kurz und nichtssagend).
ich möchte aus einer Datei Daten einlesen und in einer strcut speicher.
Als Entwicklungsumgebung kommt der BCB6 zum Einsatz... Programmiersprache also C++.
Die Daten wären z.B.:
Als Trennzeichen ein Komma.2620,30,3
2620,31,53
2620,32,31
2620,33,43
2620,34,6
Der entsprechende Code schaut so aus.
Code:
stream_konfiguration = fopen("konfiguration.txt", "r");
while ((fscanf(stream_konfiguration,"%d,%d,%d\n",&i_1, &i_2, &i_3)) != EOF)
{
lbVerlauf->AddItem(i_1, lbVerlauf);
lbVerlauf->AddItem(i_2, lbVerlauf);
lbVerlauf->AddItem(i_3, lbVerlauf);
}
Allerdings möchte ich nun auch gerne Strings in der Datei haben.
z.B.:
2620,30,3
2620,31,53
2620,32,31
Ende_Teil_1
2620,33,43
2620,34,6
Code:
stream_konfiguration = fopen("konfiguration.txt", "r");
while ((fscanf(stream_konfiguration,"%s,%s,%s\n",s_1, s_2, s_3)) != EOF)
{
lbVerlauf->AddItem(s_1, lbVerlauf);
lbVerlauf->AddItem(s_2, lbVerlauf);
lbVerlauf->AddItem(s_3, lbVerlauf);
}
Bei der Ausgabe von String s_1 wird immer die komplette Zeile ausgegeben, s_2 und s_3 bleiben leer.
Wo liegt denn da das Problem?
Danke.
gruß,
martin
(Bitte nicht über die teilweise nicht so idealen Variablennamen meckern, die sind erstmal nur zum testen so kurz und nichtssagend).