Hallo zusammen,
kann ich einen existierenden String in einer Textdatei direkt ändern?
Bislang habe ich immer die gesammte Textdatei eingelesen, mit truncateFile den Inhalt gelöscht und den neuen Inhalt in die Datei geschrieben. Das wird mit der Zeit etwas umständlich.
Schön wäre, wenn ich einen Bereich innerhalb einer Textdatei direkt überschreiben könnte...!?
Dankeschön für die Hilfe
Writestring zum Überschreiben
- PureBuster
- Beiträge: 40
- Registriert: 30.05.2008 09:54
- Computerausstattung: erbärmlich
- Wohnort: Niedersachsen / Bremen
Writestring zum Überschreiben
...coden ist wie zum Psychoklempner gehn...manchmal muss man einfach drüber reden..
- NicTheQuick
- Ein Admin
- Beiträge: 8809
- Registriert: 29.08.2004 20:20
- Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti - Wohnort: Saarbrücken
Re: Writestring zum Überschreiben
Das kannst du doch. Allerdings muss der Text, den du ersetzen willst, genau so lang sind wie der Ersatztext. Ist das nicht der Fall, geht es etwas komplizierter.
Weißt du, an welcher Stelle in der Datei der zu ersetzende Text steht? Falls ja, dann sind deine Stichworte:
Weißt du, an welcher Stelle in der Datei der zu ersetzende Text steht? Falls ja, dann sind deine Stichworte:
- OpenFile()
- FileSeek()
- WriteString() / WriteData()
- CloseFile()
Re: Writestring zum Überschreiben
wieso denn das? Wenn Du CreateFile() verwendest, brauchst Du das nicht.PureBuster hat geschrieben:mit truncateFile den Inhalt gelöscht
Grüße ... Kiffi
a²+b²=mc²
- PureBuster
- Beiträge: 40
- Registriert: 30.05.2008 09:54
- Computerausstattung: erbärmlich
- Wohnort: Niedersachsen / Bremen
Re: Writestring zum Überschreiben
Das mit dem createFile ist natürlich eine Alternative zum truncateFile.
Nun hab ich aber trotzdem noch ein Problemchen:
Die Dateien die ich da bearbeite sind reine ASCII-Texdateien. Wenn ich sie mit einem Texteditor öffne, wird mir als Dateieigenschaft angezeigt, das es sich um ein Datei im ANSI-Zeichensatz handelt. Soweit ich weiß, wird dies durch das Fehlen eines BOM deklariert.
Sobald ich nun mit PB ein File erstelle erklärt mir mein Texteditor stehts, dass es sich um eine datei im Zeichensatz UTF-8 handeln würde, selbst wenn ich kein BOM geschrieben habe oder verwendet habe.
Leider muss ich das Prog im Unicode-Modus kompilieren, weil ich an anderen Stellen UTF-Files bearbeiten muss.
Nun hab ich aber trotzdem noch ein Problemchen:
Die Dateien die ich da bearbeite sind reine ASCII-Texdateien. Wenn ich sie mit einem Texteditor öffne, wird mir als Dateieigenschaft angezeigt, das es sich um ein Datei im ANSI-Zeichensatz handelt. Soweit ich weiß, wird dies durch das Fehlen eines BOM deklariert.
Sobald ich nun mit PB ein File erstelle erklärt mir mein Texteditor stehts, dass es sich um eine datei im Zeichensatz UTF-8 handeln würde, selbst wenn ich kein BOM geschrieben habe oder
Code: Alles auswählen
WriteStringFormat(1,#PB_Ascii)
Leider muss ich das Prog im Unicode-Modus kompilieren, weil ich an anderen Stellen UTF-Files bearbeiten muss.
...coden ist wie zum Psychoklempner gehn...manchmal muss man einfach drüber reden..