eine Zeile aus Datei auslesen
-
hi Leute,
ich möchte aus einer Datei nur eine Zeile auslesen. Und die Zeile am besten in ein CString speichern. Denn ich möchte den CString dann wieder in eine andere Datei reinschreiben. Habe zu erst mit of- und ifstream gearbeitet. Aber da kann ich nur in ein char Array reinspeichern. Dann hab ichs mit CFile gemacht. aber da kann ich auch nicht in CString speichern. bzw. ich muss als 2. Parameter die Länge angeben. Die weiß ich aber vorher nicht. Und wenn ich fest z.B. 100 eingebe steht dann in der 2. Datei der Text drin, aber dahinter viele Sonderzeichen. Hoffe mir kann jemand helfen.
MFG Spaxx
-
natürlich kannst du in einem CString speichern
aber zu deinem problem.
ist es die erste zeile die du brauchst, oder ne andere bestimmte? oder ist es eine die irgendwo zw. der 20ten und 50ten sein muss???
weil zu jedem dieser probleme gbit es andere gute lösungsansätze.
z.b. wenn es die 20igste zeile ist dann ( als bsp. mit domodal aufruf, geht auch ohne )
CFileDialog ldFile(TRUE); if(ldFile.DoModal() ) { CString sZeile; CStdioFile fDatei(ldFile.GetFileName(), CFile::modeRead); int line = 1; while( fDatei.ReadString(sZeile) || (! sZeile.IsEmpty())) { if(line == 20) { m_meinString = sZeile; } line++; }wenn es nicht eine bestimmte ist, dann musst halt statt if(line == 20 ) was anderes prüfen. z.b. wie die zeile anfängt oder so. musst halt abchecken
-
danke hat funktioniert. Ich brauchte bloß die 1. Zeile auslesen. thx
MFG spaxx