Einzelnen Beitrag anzeigen

idefix2

Registriert seit: 17. Mär 2010
Ort: Wien
1.027 Beiträge
 
RAD-Studio 2009 Pro
 
#7

AW: Große Textdateien verarbeiten

  Alt 7. Apr 2011, 10:26
Und wo liegt das Problem beim ersten von Dir geposteten Ansatz - wenn due die Datei zeilenweise einliest, ist es egal, wie gross sie ist, der Bedarf an Arbeitsspeicher ist vernachlässigbar klein, es braucht ja nur eine Zeile gleichzeitig im Speicher zu sein.

Der Vorschlag von k-h, einen Textpuffer einzuführen, wird den Lesevorgang selbst deutlich beschleunigen, auch ein deutlich grösserer Textpuffer sollte bei einem halbwegs aktuellen Rechner speichermässig verkraftbar sein. Ob das wirklich insgesamt etwas merkliches bringt, hängt davon ab, was Du dann mit den Daten machst, und wie lange die Bearbeitung sonst braucht.

Entscheidend ist überhaupt, was Du mit den Daten machst. readln ist sinnvoll, wenn Du die Daten zeilenweise verarbeitest, andernfalls kann es günstiger und vor allem schneller sein, die Daten blockweise in den Speicher zu holen und vielleicht direkt in einem array of char zu fuhrwerken - aber das kann man eben nur sagen, wenn man weiss, worin genau die Verarbeitung der Daten besteht - readln gehört sicher nicht zu den schnellsten Routinen, dafür bekommst Du die Daten eben schön zeilenweise serviert.

Geändert von idefix2 ( 7. Apr 2011 um 10:34 Uhr)
  Mit Zitat antworten Zitat