fread_bytesT_fread_bytesFreadBytesFreadBytesfread_bytes (Operator)

Name

fread_bytesT_fread_bytesFreadBytesFreadBytesfread_bytes — 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)

def fread_bytes(file_handle: HHandle, number_of_bytes: int) -> Tuple[Sequence[int], int]

Beschreibung

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

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

Die gelesenen Bytes werden in ReadDataReadDataReadDatareadDataread_data zurückgegeben. IsEOFIsEOFIsEOFisEOFis_eof 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 ReadDataReadDataReadDatareadDataread_data zurückgegeben und der Parameter IsEOFIsEOFIsEOFisEOFis_eof wird auf 1 gesetzt.

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

Ausführungsinformationen

Parameter

FileHandleFileHandleFileHandlefileHandlefile_handle (input_control)  file HFile, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Datei-Handle.

NumberOfBytesNumberOfBytesNumberOfBytesnumberOfBytesnumber_of_bytes (input_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Anzahl der zu lesenden Bytes.

ReadDataReadDataReadDatareadDataread_data (output_control)  integer-array HTupleSequence[int]HTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Gelesenen Bytes.

IsEOFIsEOFIsEOFisEOFis_eof (output_control)  integer HTupleintHTupleHtuple (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_bytesFreadBytesFreadBytesfread_bytes 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_fileOpenFileOpenFileopen_file

Nachfolger

close_fileclose_fileCloseFileCloseFileclose_file

Alternativen

fread_charfread_charFreadCharFreadCharfread_char

Siehe auch

open_fileopen_fileOpenFileOpenFileopen_file, close_fileclose_fileCloseFileCloseFileclose_file, fwrite_bytesfwrite_bytesFwriteBytesFwriteBytesfwrite_bytes

Modul

Foundation