Operationen auf großer txt
Verfasst: Dienstag 3. Juli 2012, 00:39
Hallo,
ohne genauer auf den Inhalt meines tuns eingehen zu wollen, hab ich eine große Textdatei, die zeilenweise getrennten Inhalt hat, der in sich wiederum mehrfach durch Tabs getrennt ist, immer mit demselben Schema, im Grunde also eine Art Tabelle.
Ich will eine bestimmte Anzahl Zeilen einlesen, möglicherweise nicht immer von Anfang der Datei sondern zb von Zeile X bis Zeile Y, nach Tabs splitten, so dass ich mit den Informationen aus den einzelnen Spalten arbeiten kann, diverse Berechnungen mit diesen Informationen durchführen, das Ergebnis in eine andere Textdatei schreiben, und zur nächsten Zeile weitergehen.
Momentan iteriere ich mir einer for-Schleife über die Textdatei, splitte die Zeile nach Tabs in eine Liste, mit den Elementen die ich benötige führe ich meine Berechnungen durch, und schreib das Ergebnis in eine andere Textdatei. Hier scheitere ich schon, da offenbar alles im Speicher bleibt, nach 139 Zeilen hört der Rechner auf einzulesen, allerdings ohne Fehlermeldung, er führt danach kommende Schritte trotzdem aus. Auf dem Unirechner mit 256MB Ram klappt es wunderbar mit allen Zeilen.
Meine Frage: Welche Optimierungen oder ggf. andere Datenstrukturen würdet ihr mir empfehlen, um mit der großen txt umzugehen?
ohne genauer auf den Inhalt meines tuns eingehen zu wollen, hab ich eine große Textdatei, die zeilenweise getrennten Inhalt hat, der in sich wiederum mehrfach durch Tabs getrennt ist, immer mit demselben Schema, im Grunde also eine Art Tabelle.
Ich will eine bestimmte Anzahl Zeilen einlesen, möglicherweise nicht immer von Anfang der Datei sondern zb von Zeile X bis Zeile Y, nach Tabs splitten, so dass ich mit den Informationen aus den einzelnen Spalten arbeiten kann, diverse Berechnungen mit diesen Informationen durchführen, das Ergebnis in eine andere Textdatei schreiben, und zur nächsten Zeile weitergehen.
Momentan iteriere ich mir einer for-Schleife über die Textdatei, splitte die Zeile nach Tabs in eine Liste, mit den Elementen die ich benötige führe ich meine Berechnungen durch, und schreib das Ergebnis in eine andere Textdatei. Hier scheitere ich schon, da offenbar alles im Speicher bleibt, nach 139 Zeilen hört der Rechner auf einzulesen, allerdings ohne Fehlermeldung, er führt danach kommende Schritte trotzdem aus. Auf dem Unirechner mit 256MB Ram klappt es wunderbar mit allen Zeilen.
Meine Frage: Welche Optimierungen oder ggf. andere Datenstrukturen würdet ihr mir empfehlen, um mit der großen txt umzugehen?