Einzelnen Beitrag anzeigen

Olli
(Gast)

n/a Beiträge
 
#10

Re: Datei im Speicher zeilenweise lesen

  Alt 12. Okt 2005, 12:59
Zitat von Luckie:
Mach mir die Entscheidung leichter und sagt mir einfach, dass die WinAPI Lösung, gegenüber der Pascal Lösung, performanter ist, dann nehme ich deinen schönen Code.
Die dürften sich nicht viel nehmen. Aber da du die Datei mappen würdest und entsprechend als langen String im Speicher hast, kannst du auch mit einer Schleife durchgehen und die Zeilen extrahieren. Ich würde es übrigens wie folgt machen:

Ich gehe durch den Puffer und ersetze alle #13 durch #0, danach habe ich ein typisches "Array" von nullterminierten Strings und muß ähnliche Methoden anwenden wie bei REG_MULTI_SZ. Wenn der Puffer R/O ist, dann würde ich selbstverständlich nur nach #13 suchen ohne zu ersetzen und dann eben die entsprechenden Anfangsoffsets und Endoffsets merken und mit lstrcpyn() kopieren.

Was du keinesfalls machen solltest ist, einen String zu nehmen und die Zeichen jeweils zeichenweise an den String anzuhängen. Dadurch würde intern viel mehr ablaufen als das einfach Kopieren einer Zeile in einen String oder Puffer.
  Mit Zitat antworten Zitat