![]() |
Datei teilweise lesen
Hallo :hi:
Ich brauche eine Funktion, die eine Datei teilweise ließt, also den Text von einer bestimmten Zeile bis zur einer bestimmten Zeile. So weit bin ich bisher, aber komme nicht so richtig weiter:
Delphi-Quellcode:
Ich hoffe auf ein paar Tips, wie man das am besten und am schnellsten lösen kann. :)
function ReadPart(const AFile: string; AFromLine, AToLine: Integer;
var APart: string): Boolean; begin Result := True; try with TFileStream.Create(AFile, fmOpenRead or fmShareDenyNone) do try finally Free; end; except Result := False; end; end; Achja und die Funktion sollte möglichst speicherschonend arbeiten, also die Datei z.B komplett in eine StringListe o.Ä zu laden geht nicht. |
Re: Datei teilweise lesen
Einfache Schleife von 1 bis Startzeile -1 und Zeilen lesen und verwerfen
|
Re: Datei teilweise lesen
Richtig, schön altmodisch mit ReadLn.
|
Re: Datei teilweise lesen
Zitat:
Delphi-Quellcode:
aber das ist mir bei größeren Daten einfach zu langsam.
function ReadPart(const AFile: string; AFromLine, AToLine: Integer;
var APart: string): Boolean; var F: TextFile; I: Integer; S: string; begin AssignFile(F, AFile); try Reset(F); try I := 0; APart := ''; while (I <= AToLine) and not EOF(F) do begin ReadLn(F, S); if I >= AFromLine then APart := APart + S + sLineBreak; Inc(I); end; finally CloseFile(F); end; except Result := False; end; end; Mit FileStream müsste es doch auch schneller gehen, oder? |
Re: Datei teilweise lesen
Versuch es doch aus.
|
Re: Datei teilweise lesen
![]() |
Re: Datei teilweise lesen
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz