ERLEDIGT
JA
JA
ANTWORTEN
3
3
ZUGRIFFE
523
523
EMPFEHLEN
-
Hallo,
ich möchte gerne einige Zeilen in eine Datei mitten rein hinzufügen.
Ich benutze C#.
Mein bisheriger Weg war es, die Datei erst einmal auszulesen (StreamReader), dabei alle Strings (ReadLine) in eine Liste zu schreiben, dann die Datei zu löschen, diese dann wieder neu anzulegen und mit dem StreamWriter alle listenelemente plus den einzufügenden Text wieder zu schreiben.
Das muss doch schöner gehen oder nicht?
Viele Grüße,
Eroli
-
"The three chief virtues of a programmer are: Laziness, Impatience and Hubris."
--- Larry Wall
-
Na gut, wenn es nicht anders geht...
Dankesehr.
-
29.07.08 13:24 #4
- Registriert seit
- Mar 2007
- Beiträge
- 125
Weißt du an welcher Stelle du deinen Text einfügen mußt ?
Entweder die Position oder evt den Satz ?
Dann könntest du den gesamten Block auslesen mit "ReadToEnd()"
Dann nimmst du den Text der ersetzt werden soll.
Dann den geänderten Text.
und dann ein text.Replace oder mit Regex ersetzen.
Oder mit Position. Da wirst du ein bißchen rechnen müssen weil er die Umbruch und Absatzzeichen mitzählt.
Und dann Splitstring erster Teil + dein eingefügter Text + Splitsring zweiter Teil.
Ich habe allerdings keine Ahnung was passiert wenn du ne 10.000 Seiten Textdatei einliest.
Er behält ja alles im Speicher. Könnte aber noch gehen.
Und zum schreiben, einen Streamwriter bauen mit dem Pfad auf die alte Datei.
Du mußt lediglich deinen Reader mit .Close() schließen bevor du den Streamwriter baust.
und dann einfach .Write(text);
.Flush()
Beispiel:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13
System.IO.StreamReader reader = new System.IO.StreamReader("c:\\datei.txt"); string line; line = reader.ReadToEnd(); line = line.Replace("Das ist mein Satz den ich ersten soll.", "Das ist mein neuer Satz. Und hier noch einer."); // reader.Close(); System.IO.StreamWriter writer = new System.IO.StreamWriter("c:\\datei.txt"); writer.Write(line); writer.Flush(); writer.Close();
fertig
Ähnliche Themen
-
Text in eine Textarea im Hauptwindow hinzufügen
Von warcraft9105 im Forum Javascript & AjaxAntworten: 2Letzter Beitrag: 24.05.08, 23:59 -
Textzeile mitten in die Datei schreiben, ohne den Text zu ersetzen
Von Andron im Forum JavaAntworten: 17Letzter Beitrag: 23.10.07, 13:28 -
In Index.php eine neue php datei hinzufügen
Von ApX im Forum PHPAntworten: 3Letzter Beitrag: 19.10.07, 22:19 -
Eine Text Datei durchsuchen
Von flipo84 im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 53Letzter Beitrag: 26.04.07, 15:09 -
in jar eine neue datei per JarOutputStream hinzufügen
Von mrno im Forum JavaAntworten: 4Letzter Beitrag: 20.09.05, 17:08





Zitieren

Login





