Laden...

String in Datei ersetzen?

Erstellt von motoermaik vor 17 Jahren Letzter Beitrag vor 17 Jahren 1.324 Views
M
motoermaik Themenstarter:in
38 Beiträge seit 2006
vor 17 Jahren
String in Datei ersetzen?

Hallo Leute,

ist es denn möglich in einer Datei nach einem String zu suchen und diesen zu ersetzen?
Sprich die Vorteile des StreamReader und StreamWriter Objekts zusammenzufassen?

Ich muss in Textdateien etc. Zeilenweise Positionen ersetzen, bzw. Strings ersetzen.

vielen Dank für Eure Hilfe

Maik

308 Beiträge seit 2005
vor 17 Jahren

Moin motoermaik,

ersetzen kannst du nur, wenn die länge des Ersatzes identisch zur Länge des zu ersetzenden ist.
Mann kann in eine Datei nicht einfügen. (d.h. nicht auf File ebene (ok, wenn man anfängt low-level im NTFS oder FAT rumzuwühlen mag das möglich sein, aber diese Möglichkeit würde ich mal ignorieren wollen) . Mann muss halt alles ab der dersetzung dann selber wieder in die Datei schreiben. Bei langen dateien kommst du da evtl. nicht um eine Tem-Datei rum...)

M
motoermaik Themenstarter:in
38 Beiträge seit 2006
vor 17 Jahren

Aha, das dachte ich mir.

Also am besten zeilenweise lesen und schreiben, und wenn die Zeile der entspricht die ich ändern will meinen neuen String schreiben anstatt der momentan gelesenen Zeile.

Danke Dir!

563 Beiträge seit 2004
vor 17 Jahren

ersetzen kannst du nur, wenn die länge des Ersatzes identisch zur Länge des zu ersetzenden ist.

versteh ich nicht: String.Replace("kurz", "jetzt isses aber gaaanz doll lang")

308 Beiträge seit 2005
vor 17 Jahren

@.unreal: wir reden über Dateien, nicht Strings im Speicher!
Im übrigen wird auch bei string.Replace nix im orignal String ersetzt. Auch da wird eine Kopie angelegt ... (strings sind sogar komplett immutable. nur mit einem StringBuilder würde da irgendetwas gehen)