Einzelnen Beitrag anzeigen

alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#15

Re: Lesen, Schreiben und mehr in Textdateien - TFileStream,

  Alt 27. Nov 2005, 15:33
Zitat von himitsu:
...
Zitat von Totti:
ne, seek läuft net bei textfile
Nicht ganz die Warheit mein Seek64 funktioniert inoffiziell damit.
Äh, dem TFilestream.seek ist es doch völlig egal, wohin es den FilePointer per 'Seek' hinschiebt. Ergo geht TFileStream.Seek mit allen Dateien. Ausnahmslos.
Was Du benötigst, ist ein Random File Access auf eine Textdatei. Das ist immer mit einem zusätzlichen Aufwand verbunden. Eine TStringlist ist ordendlich flott und sooo einfach. Teste das erstmal, bevor Du bezweifelst, ob Dir das reicht.

Wenn Du dann doch noch schnellere Tools brauchst, dann verwende ein TFileStream, lies die Datei in einen internen Buffer und schreibe Dir eigene Routinen, um diesen Buffer zeilenweise zu manipulieren. In Zeiten, wo der CPU in GHZ gemessen wird, sollten die Prozeduren unterhalb der Messgenauigkeit liegen. Wie lange dauert es denn, 4MB Textdaten im Speicher zu verschieben, um eine neue Zeile an erster Stelle einzufügen?

Imho gibt es keine Möglichkeit, "mal eben" (also sehr schnell) die 1517.te Zeile einer 122.959.454 Zeilen umfassenden Textdatei zu löschen.
Dazu sind eben Dateien mit fester Recordgröße ("File Of TRecord") da. Oder Datenbanken.
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat