C#-effiziente Methode zum Löschen von Textdateizeilen
Bei der Verarbeitung von Textdateien ist es oft notwendig, bestimmte Zeilen zu löschen. In diesem Artikel werden effiziente Lösungen zur Bewältigung dieser Aufgabe in C# untersucht, insbesondere für die Verarbeitung großer Textdateien.
Lösungsübersicht
Dieses Schema erstellt eine temporäre Datei und kopiert selektiv Zeilen aus der Originaldatei in die temporäre Datei, wobei Zeilen zum Löschen ausgeschlossen sind. Nachdem die Zielzeilen verarbeitet wurden, ersetzt die temporäre Datei die Originaldatei und entfernt so die unnötigen Zeilen.
Code-Implementierung
<code class="language-csharp">string tempFile = Path.GetTempFileName(); using (StreamReader sr = new StreamReader("file.txt")) using (StreamWriter sw = new StreamWriter(tempFile)) { string line; while ((line = sr.ReadLine()) != null) { if (line != "removeme") sw.WriteLine(line); } } File.Delete("file.txt"); File.Move(tempFile, "file.txt");</code>
Diese Methode stellt sicher, dass nur notwendige Zeilen beibehalten werden, während die Zielzeilen aus der aktualisierten Datei ausgeschlossen werden.
Weitere Überlegungen
<code class="language-csharp">File.WriteAllLines("file.txt", File.ReadLines("file.txt").Where(l => l != "removeme").ToList());</code>
Diese Methode vermeidet die Erstellung temporärer Dateien, erfordert jedoch eine sofortige Ausführung mit ToList().
Das obige ist der detaillierte Inhalt vonWie kann ich Zeilen aus großen Textdateien in C# effizient löschen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!