Einzelnen Beitrag anzeigen

ichbins

Registriert seit: 9. Jul 2005
Ort: Hohenaltheim
1.001 Beiträge
 
Delphi 2005 Personal
 
#14

Re: Wie lese ich den BINÄRCODE einer Datei aus?

  Alt 11. Mär 2006, 12:26
yep, so gehts.

die grünen Kommentare kannst du natürlich allesammt rauslöschen, waren nur zur Erklärung gedacht

das geht aber nur wenn die Datei die du öffnen willst auch existiert. Ansonsten rewrite statt reset benutzen.

1024 Bytes einfach weil das genau ein Kilobyte ist. 4096 (4 Kilobyte) ist auch eine gängige Größe aber du kannst beliebige Größen bis (theoretisch) 2 GB verwenden.


also, ich erklärs nochmal:

file of byte heisst, dass du eine Datei hast, die immer in Byte-Werten (der Typ Byte ist in Delphi eine Zahlenvariable der Größe ein Byte (0..255)) liest und schreibt. du könntest auch file of integer oder file of char nehmen.

assignfile(f,dateiname) heisst, dass du der Datei einen Dateinamen zuweist. Die Datei wird aber noch nicht geöffnet.

reset(f) heisst, dass die Datei geöffnet wird. Das geht nur wenn die Datei schon existiert.

rewrite(f) heisst, dass die Datei neu erstellt und dann geöffnet wird. Falls sie schon existiert, wird der Inhalt gelöscht.

blockwrite(f,buf,bytecont,writtenbytes) heisst, dass in die Datei f bytecont Bytes aus dem Buffer buf geschrieben werden, und die Anzahl der Tatsächlich geschriebenen Bytes in der Variable writtenbytes gespeichert wird.

blockread(f,buf,bytecount,readbytes) heisst, dass aus der Datei f bytecount Bytes in den Buffer buf eingelesen werden, und die Anzahl der Tatsächlich gelesenen Bytes in der Variable readbytes gespeichert wird.

closefile(f) heisst, dass die Datei f geschlossen wird. Solltest du immer am Ende machen. Sonst ist der Zugriff auf die Datei durch andere Programme oder ein erneutes Öffnen gesperrt.

dann gibt es noch einige andere wertvolle Funktionen:

filesize(f) gibt die Dateigröße der Datei zurück.

seek(f,position) führt dazu, dass der Dateipositionszeiger (da wo blockread oder blockwrite anfangen zu arbeiten wenn du sie ausführst, nach dem Öffnen der Datei immer 0) auf die neue Position springt.

eof(f) gibt zurück, ob der Dateipositionszeiger am Ende der Datei ist.

filepos(f) gibt die Position des Dateipositionszeigers zurück.
Michael Enßlin
Ich, der ich weiß, mir einzubilden, dass ich weiß, nichts zu wissen, weiß, dass ich nichts weiß.
Sokrates
  Mit Zitat antworten Zitat