Benutzer mit den meisten Antworten
Datei zeilenweise in CString Array einlesen

Frage
-
Wie kann ich jede der Zeilen in einer Datei einzeln in ein Array einlesen? Also die erste Zeile belegt das 0. Element des Arrays, die 2. Zeile das 1. Element des Arrays usw.
Beim schreiben der Datei habe ich das so gemacht:CString str[16]; ... CStdioFile output; file.Open(_T("settings.dat"),CFile::modeWrite | CFile::modeCreate,NULL); for(int i = 0; i <= 15; i++) { output.WriteString(str[i]); } output.Close();
VisualCPlusPlus
Antworten
-
Was ist daran so schwierig? Es würde mich wirklich interessieren wo Du hier ein Problem bei der Realisierung hattest?
CStringArray arr; CStdioFile f(...); for(int i = 0; i <= 15; i++) { CString str; f.ReadString(str); arr.Add(str); }
oder
CStringArray arr; arr.SetSize(15); CStdioFile f(...); for(int i = 0; i <= 15; i++) { f.ReadString(arr[i]); }
Achtung keine Fehlerprüfung, wenn Deine Datei mal keine 15 Zeilen hat...
Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de- Als Antwort vorgeschlagen Martin RichterModerator Donnerstag, 6. Oktober 2011 06:14
- Als Antwort markiert Robert BreitenhoferModerator Donnerstag, 3. November 2011 09:19
Alle Antworten
-
das versteh ich nicht ganz wie ich das machen muss. Die Datei enthält 16 Zeilen. Ich habe ein Array mit 16 Elementen. Nun möchte ich die Zeilen in das Array übertragen.
Könnte ich vielleicht nochmal ein Codebeispiel bekommen?
for(int i = 0; i <= 15; i++) { //Auslesen!? }
VisualCPlusPlus -
Was ist daran so schwierig? Es würde mich wirklich interessieren wo Du hier ein Problem bei der Realisierung hattest?
CStringArray arr; CStdioFile f(...); for(int i = 0; i <= 15; i++) { CString str; f.ReadString(str); arr.Add(str); }
oder
CStringArray arr; arr.SetSize(15); CStdioFile f(...); for(int i = 0; i <= 15; i++) { f.ReadString(arr[i]); }
Achtung keine Fehlerprüfung, wenn Deine Datei mal keine 15 Zeilen hat...
Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de- Als Antwort vorgeschlagen Martin RichterModerator Donnerstag, 6. Oktober 2011 06:14
- Als Antwort markiert Robert BreitenhoferModerator Donnerstag, 3. November 2011 09:19
-
Ich habe es so gemacht wie in dem Beispiel. Aber bei der zeile
f.ReadString(str);
Wenn ich auf Wiederhohlen klicke, kommt das mein Programm einen Haltepunkt ausgelöst hat. Bei VS lande ich in der Datei fgets.c bei Zeile 57.
VisualCPlusPlus- Bearbeitet Robert BreitenhoferModerator Donnerstag, 3. November 2011 09:19 Formatierung
-