fread_bytesT_fread_bytesFreadBytesFreadBytes (Operator)

Name

fread_bytesT_fread_bytesFreadBytesFreadBytes — Einlesen von Bytes aus einer Eingabebinärdatei.

Signatur

fread_bytes( : : FileHandle, NumberOfBytes : ReadData, IsEOF)

Herror T_fread_bytes(const Htuple FileHandle, const Htuple NumberOfBytes, Htuple* ReadData, Htuple* IsEOF)

void FreadBytes(const HTuple& FileHandle, const HTuple& NumberOfBytes, HTuple* ReadData, HTuple* IsEOF)

HTuple HFile::FreadBytes(Hlong NumberOfBytes, Hlong* IsEOF) const

static void HOperatorSet.FreadBytes(HTuple fileHandle, HTuple numberOfBytes, out HTuple readData, out HTuple isEOF)

HTuple HFile.FreadBytes(int numberOfBytes, out int isEOF)

Beschreibung

fread_bytesfread_bytesFreadBytesFreadBytesFreadBytes liest Bytes aus der Eingabedatei, die durch das Handle FileHandleFileHandleFileHandleFileHandlefileHandle definiert ist und mit open_fileopen_fileOpenFileOpenFileOpenFile im Binärformat geöffnet worden sein muss.

Die Anzahl der zu lesenden Bytes wird in NumberOfBytesNumberOfBytesNumberOfBytesNumberOfBytesnumberOfBytes übergeben, und muss größer als 0 sein.

Die gelesenen Bytes werden in ReadDataReadDataReadDataReadDatareadData zurückgegeben. IsEOFIsEOFIsEOFIsEOFisEOF enthält den Wert 1, wenn das Dateiende erreicht wurde, ansonsten 0.

Wenn die Anzahl der zu lesenden Bytes größer ist als die Anzahl der Bytes in der Eingabebinärdatei, werden die gelesenen Bytes bis zum Dateiende in ReadDataReadDataReadDataReadDatareadData zurückgegeben und der Parameter IsEOFIsEOFIsEOFIsEOFisEOF wird auf 1 gesetzt.

Wenn keine Bytes gelesen werden können, weil das Ende der Datei erreicht ist, wird in ReadDataReadDataReadDataReadDatareadData ein leeres Tupel zurückgegeben und der Parameter IsEOFIsEOFIsEOFIsEOFisEOF auf 1 gesetzt.

Ausführungsinformationen

Parameter

FileHandleFileHandleFileHandleFileHandlefileHandle (input_control)  file HFile, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Datei-Handle.

NumberOfBytesNumberOfBytesNumberOfBytesNumberOfBytesnumberOfBytes (input_control)  integer HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Anzahl der zu lesenden Bytes.

ReadDataReadDataReadDataReadDatareadData (output_control)  integer-array HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Gelesenen Bytes.

IsEOFIsEOFIsEOFIsEOFisEOF (output_control)  integer HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Ende der Datei beim Lesen erreicht.

Beispiel (HDevelop)

* Read a binary file 5 bytes at a time till EOF is reached.
open_file(Filename,'input_binary',FileHandle)
repeat
	fread_bytes(FileHandle, 5, BytesRead, IsEOF)
until (IsEOF)
close_file (FileHandle)

Ergebnis

fread_bytesfread_bytesFreadBytesFreadBytesFreadBytes liefert den Wert 2 (H_MSG_TRUE), falls die Eingabedatei im Binärformat geöffnet ist und gelesen werden konnte. Andernfalls wird eine Fehlerbehandlung ausgelöst.

Vorgänger

open_fileopen_fileOpenFileOpenFileOpenFile

Nachfolger

close_fileclose_fileCloseFileCloseFileCloseFile

Alternativen

fread_charfread_charFreadCharFreadCharFreadChar

Siehe auch

open_fileopen_fileOpenFileOpenFileOpenFile, close_fileclose_fileCloseFileCloseFileCloseFile, fwrite_bytesfwrite_bytesFwriteBytesFwriteBytesFwriteBytes

Modul

Foundation