Hallo,
| Jas DA hat folgendes geschrieben: |
| Kann ich denn irgendwie sagen, dass in der Datei dann z.B. in Zeile 5 angefangen wird etwas neues nineinzuschreiben ? Also gibt es die Möglichkeit in Textdateien ein paar Zeilen zu überspringen ? |
wenn du die Daten mitten reinschreiben wird, musst du die komplette Datei lesen, deine änderungen machen, und sie wieder komplett schreiben.
Wenn du tatsächlich Zeilenorientiert arbeitest kannst du das sehr konfortabel mit dem
tStringList-Objekt machen.
Dieser Code-Schnipsel öffnet eine Datei, fügt eine neue fünfte Zeile ein und schreibt sie wieder. In der Praxis sollte überprüft werden ob die Datei überhaubt soviele Zeilen hat:
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| procedure TForm1.Button1Click(Sender: TObject); VAR TXT : tStringList; begin TXT := tStringList.Create; TRY TXT.LoadFromFile('C:\Tmp\Test.html'); TXT.Insert(4, '<b>Neue Zeile.</b>'); TXT.SaveToFile('C:\Tmp\Test.html'); FINALLY FreeAndNIL(TXT); END; end; |
Gruß
Klabautermann