Daten werden überschrieben
-
Hi,
ich speichere folgendermaßen Daten ab :
CStdioFile DateiSpeichern; strDateiName = GetCommandLine(); int nPos = strDateiName.ReverseFind( '\\'); strDateiName = strDateiName.Mid(1, nPos-1); strDateiName += "\\zeiten.txt"; UpdateData(TRUE); if(DateiSpeichern.Open(strDateiName, CFile::modeCreate | CFile::Read)) { DateiSpeichern.WriteString ("Am " + m_sDate + " von " + strUhr + " bis " + m_sTime + "\n") ; DateiSpeichern.Close (); MessageBox ("Daten wurden gespeichert", "Daten gespeichert", MB_ICONINFORMATION); } else { MessageBox ("Fehler beim Öffnen der Datei - Speichern wurde abgebrochen", "Fehler", MB_ICONINFORMATION); }
Wenn ich das so mache überschreibt der einfach das vorher gespeicherte.
Wie stell ich das an das er einfach eine neue Zeile nimmt, anstatt gleich das ganze Textfile neuzuerstellen ?
-
Gib mal zusätzlich das Flag 'CFile::modeNoTruncate' beim Öffnen an, dann wird die Datei nicht gelöscht. (und spring vor dem Schreiben ans Dateiende (SeekToEnd()), sonst überschreibst du selber den Dateiinhalt)
-
Danke , du bist der Beste