fread

fread liest Daten aus einer Datei.

dat = fread(fh, ssType)
dat = fread(fh, ssType, n)
dat = fread_char(fh, n)
dat = fread_char8(fh, n)
dat = fread_float64(fh, n)
dat = fread_float32(fh, n)
dat = fread_int8(fh, n)
dat = fread_uint8(fh, n)
dat = fread_int16(fh, n)
dat = fread_uint16(fh, n)
dat = fread_int32(fh, n)
dat = fread_uint32(fh, n)
dat = fread_int64(fh, n)
dat = fread_uint64(fh, n)

Returnwert

dat ist ein skalarer String, falls ssType gleich „char“ ist oder ein Vektor mit floating-point-Werten in den sonstigen Fällen.

Parameter

fh

fh ist ein Datei-Zugriffsnummer (file handle), die die Funktion fopen erzeugt hat.

ssType

ssType ist einer der folgenden Strings:

Wert Alte Bezeichnung Bedeutung
„float64“ „double“ 8 Bytes Floating-Point-Wert, fread_float64.
„float32“ „float“ (4 Bytes)
- „real48“ (6 Bytes)
„char“ „char“ 2 Bytes-Unicode-Zeichen, fread_char.
„char8“ „char8“ 1 Byte, fread_char8, siehe mem_get.
„int8“ - (1 Byte)
„uint8“ „uchar“ (1 Byte)
„int16“ „short“ (2 Bytes)
„uint16“ „ushort“ (2 Bytes)
„int32“ „int, long“ (4 Bytes)
„uint32“ „uint, ulong“ (4 Bytes)
„int64“ - (8 Bytes)
„uint64“ - (8 Bytes)
n

n bestimmt die Anzahl an Datenobjekten die gelesen werden sollen. Wenn n nicht angegeben wird (bzw. n <= 0), wird die gesamte Datei ab der aktuellen Position gelesen.

Beispiel

fh = fopen("/test.bin", "wb");
rvValues = 1:100;              // 1,2,3,4,...
fwrite(fh, "int16", rvValues); // writes 100 short values (int16)
fclose(fh);
fh = fopen("/test.bin", "rb");
rvValues = fread(fh, "int16", 100); // reads 100 short values (int16)
fclose(fh);

History

Version Beschreibung
5.8.2 Neuer Typ „char8“.
5.0.0 „real48“, neue Typen „int8“, „int64“, „uint64“, char Unicode.
4.2.0 Falls ssType == „char“ ist, wird der Resultat-String nicht mehr am ersten 0-Zeichen abgeschnitten. Es kann die Funktion strtrim verwendet werden, um den Resultat-String am ersten 0-Zeichen abzuschneiden.

id-1864235