fread liest Daten aus einer Datei.
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 ist ein Datei-Zugriffsnummer (file handle), die die Funktion fopen erzeugt hat.
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 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. |
Siehe auch
Überblick Binär- und Text-Dateien, fopen, fwrite, fseek, feof
id-1864235