Einfügen von Daten in text-Datei
Ich Sie einfügen möchten die Daten an einigen Positionen in der text-Datei, ohne tatsächlich zu überschreiben, auf die vorhandenen Daten. Ich habe zwei text-Datei. "one.txt" die Datei hat 1000 Zeilen, "two.txt" Datei habe 10000 Zeilen. Ich will Lesen "one.txt" Inhalt der Datei und fügen Sie es in den ersten 1000 Zeilen "two.txt" Inhalt der Datei(Anhängen der Inhalt "one.txt" zu Beginn "two.txt").
Kriterien:
- Minimum an code .
- Weniger Speicher Verbrauch(unabhängig der Programmiersprache )
- Leistung (wird betrachtet, basierend auf der Größe der Datei).
- Wollen Sie "einfügen" den text aus one.txt in einen beliebigen Ort in two.txt? Oder haben Sie nur den text einfügen möchten aus one.txt zu Ende two.txt? Anhängen ist trivial. Das einfügen dauert ein bisschen mehr Arbeit.
- Willst du "Inhalt Anhängen" aus one.txt zu two.txt?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie sind nicht beschränkt auf c# können Sie nur die folgenden von einer windows-Befehlszeile:
Diese erstellen würde die Datei, die Sie wollen, aber es würde aufgerufen werden three.txt. Wenn Sie müssen es in two.txt Sie konnte einfach umbenennen two.txt zu etwas anderem und dann machen die Kopie mit Anhängen two.txt als Dritter parm.
öffnen Sie einfach einen streamreader für die erste Datei und stream writer (im append-Modus) für die zweite Datei. Wie Ihr beim Lesen der ersten 1000 Zeilen aus der ersten Datei, legen Sie Sie in den zweiten.
Etwas wie dieses:
Möchten Sie vielleicht zu prüfen, die für das Ende der Datei auf dem StreamReader, aber dies wird Ihnen die Allgemeine Idee....
Basierend auf den neuen Informationen im OP:
Können Sie verwenden Sie diese gleiche Methode, aber nur eine Marke schaffen Sie die neue Datei, liest die Daten aus der ersten Datei, gefolgt von den Daten aus der zweiten Datei. Sobald es in die neue Datei, ersetzen Sie die original "two.txt".
Wenn Sie nur dieses eine mal, hier ist etwas code, der das tut, was Sie wollen. Habe ich nicht kompilieren, aber ich glaube, es gibt keine Probleme.
Hoffe, dies wird Ihnen den Einstieg.
Bob