![]() |
File of Byte
Ich habe die Aufgabe eine bestehende Datei auf gültigkeit(der Größe) zu Prüfen, dazu soll man die Datei(of record) als file of byte öffnen!!!
Kann mir einer von euch sagen wie das gehen soll? |
Re: File of Byte
Hallo Stillmatic,
soll nur die Größe der Datei oder auch der Inhalt der Datei geprüft werden? Bei der Kontrolle des Inhalts sollten besser TStream-Objekte (genauer TFileStream oder TMemoryStream) aus der Unit Classes benutzt werden. Ein byte-weises Einlesen einer Datei sollte so funktionieren:
Delphi-Quellcode:
PS: Habs zwar kompiliert aber nicht getestet!
procedure TForm1.FormCreate(Sender: TObject);
var lFile : file of Byte; lData : Byte; begin AssignFile(lFile, 'C:\TestFile.bin'); Reset(lFile); try while (not EOF(lFile)) do begin Read(lFile, lData); // hier irgendwas mit lData anstellen! end; // while finally CloseFile(lFile); end; // finally end; Gruß, pszopp |
Re: File of Byte
Ich denke, es ist eher so etwas gemeint (keine Fehlerbehandlung implementiert):
Delphi-Quellcode:
function IsFileSizeValid(const FileName: string): Boolean;
type TTestRec = record bla: string[30]; blubb: integer; end; var f: file of byte; iSize: integer; begin AssignFile(f,FileName); Reset(f); iSize := FileSize(f); CloseFile(f); Result := iSize mod SizeOf(TTestRec) = 0; end; |
Re: File of Byte
Jo kool!!!
Ich versteh nur nicht ganz wann eine Datei auf korrekte Größe getestet werden sollte?? Vorm Öffnen oder Speichern?? Wo würde man am schlausten die Abfrage machen??? |
Re: File of Byte
Wenn die Dateigröße nicht stimmt, was passiert wohl beim Lesen des letzten Datensatzes? Und wie willst Du die Größe einer Datei ermitteln, die Du noch nicht gespeichert hast? Ich hoffe, das beantwortet Deine Fragen :mrgreen: .
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:25 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