SeToY Geschrieben 21. Juli 2009 Geschrieben 21. Juli 2009 (bearbeitet) Huhu, ich suche einen Code-schnippsel, der wie z.B. das Search and Replace beim Editor funktioniert. Es soll nach < bzw. > gesucht werden und durch < bzw > ersetz werden. Beispiel: <Header> zu: <Header> C#-Skript, Consolen-Anwendung, Nachricht in String lesen, und dann aktionen ausführen. Hat wer gerade soetwas zur hand? Danke und liebe Grüße, Setoy Edit: Habe was using System; using System.IO; using System.Text.RegularExpressions; /// <summary> /// Replaces text in a file. /// </summary> /// <param name="filePath">Path of the text file.</param> /// <param name="searchText">Text to search for.</param> /// <param name="replaceText">Text to replace the search text.</param> static public void ReplaceInFile( string filePath, string searchText, string replaceText ) { StreamReader reader = new StreamReader( filePath ); string content = reader.ReadToEnd(); reader.Close(); content = Regex.Replace( content, searchText, replaceText ); StreamWriter writer = new StreamWriter( filePath ); writer.Write( content ); writer.Close(); } Bearbeitet 21. Juli 2009 von SeToY Zitieren
Kosinator Geschrieben 21. Juli 2009 Geschrieben 21. Juli 2009 Auch wenns nicht wichtig ist: mach n using um die Reader und Writer, dispose sie am ende, oder mach ähnliches. (Wobei ich mir ehrlich gesagt nicht sicher bin, ob man das in statischen Methoden auch tun muss, aber andrerseits, warum nicht) vllt, noch n try/catch/finally drum, in dem du die Verfügbarkeit deiner Dateien prüfst (im finally dann Closen und disposen) Falls du das ganze jedoch "nur für dich" brauchst, reichts wahrscheinlich so wie es ist, du weißt ja was du tust^^ gruß Zitieren
Honkytonk Geschrieben 22. Juli 2009 Geschrieben 22. Juli 2009 Aus Performance-Gründen würde ich das ganze Zeilenweise einlesen, so dass nicht der ganze Stream auf einmal in den Speicher wandert. (sofern du immer nur kleine Dateien hast geht´s natürlich...) Gruß, Honky Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.