![]() |
TFileStream und EOF?
hi,
ich habe bis jetzt nie mit filestreams gearbeitet... mag mir jemand sagen ob das ding eine EOF routine besitzt oder sowas? |
Re: TFileStream und EOF?
Delphi-Quellcode:
while fs.pos <= fs.size do
|
Re: TFileStream und EOF?
danke ^^
|
Re: TFileStream und EOF?
Ist aber eine vergleichsweise langsame Funktion. Besser ist es den Rückgabewert von Read zu begutachten, da dort die Anzahl der tatsächlich gelesenen Bytes zurückgegeben werden.
|
Re: TFileStream und EOF?
Jupp:
Delphi-Quellcode:
Aber er hatte nach EOF gefragt und das ist das Konstrukt, was dem am nächsten kommt.
repeat
BytesRead := fs.Read(Buffer[0], BUFFERSIZE); Move(BuffToHex(Buffer)[1], s[i * (HexLength * BUFFERSIZE) + 1], HexLength * BytesRead); Inc(i); Progressbar1.StepIt; Application.ProcessMessages; until BytesRead < BUFFERSIZE; |
Re: TFileStream und EOF?
ich hab mich schon immer gefragt wozu so ein buffer eigentlich ist, kann man daten nie direkt (alle) auslesen?
was ist wenn ich z.b so eine binäre datei parsen möchte, indem zb das wort "hallo" mit drin steckt und der buffer nur bis "...hal" kommt ? ich würde gerne lernen wie das ganze so funktioniert, wie die daten in der datei vorliegen und wie man sie parsen kann usw. |
Re: TFileStream und EOF?
Sicherlich kannst du die Datei auch komplett in einen Buffer laden. Dieser muss dann aber groß genug sein. Ist zum Beispiel immer schlecht, wenn man größere Dateien mit einmal bearbeitet. Ist halt ne Frage des Arbeitsspeicher verbrauches.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:44 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