Ich versuche zu bestimmen, was der schnellste Weg ist, große Textdateien mit vielen Zeilen zu lesen, einige Bearbeitungen vorzunehmen und sie in eine neue Datei zu schreiben. In C#/.net scheint StreamReader eine scheinbar schnelle Methode zu sein, aber wenn ich versuche, für diese Datei zu verwenden (Zeile für Zeile), geht es etwa 1/3 der Geschwindigkeit von Pythons I/O (was mich beunruhigt) weil ich immer wieder höre, dass IO von Python 2.6 relativ langsam ist.Was ist die optimale (Geschwindigkeits-) Methode zum Parsen einer großen Textdatei (> 4 GB) mit vielen (Millionen) Zeilen?
Wenn es nicht schneller .Net Lösung hierfür ist, wäre es möglich, eine Lösung zu schreiben schneller als Stream oder ist es schon komplizierte Puffer/Algorithmus/Optimierungen verwenden, die ich würde nie zu schlagen hoffen?
Eine Frage, wo ist Ihr Engpass im C# -Code? Haben Sie den Code profiliert oder gemessen? 1/3 der Geschwindigkeit von Python scheint für Operationen mit schwerem Festplattenzugriff nicht richtig zu sein. –
bekommt jeder eine gültige Antwort auf diesen? Warst du gerade beim EOF oder was war deine Strategie beim Stream-Reader? –