| MATLAB Function Reference | Search  Help Desk |
| fread | See Also |
Syntax
[A,count] = fread(fid,size,precision) [A,count] = fread(fid,size,precision,skip)
Description
[A,count] = fread(fid,size,precision)
reads binary data from the specified file and writes it into matrix A. Optional output argument count returns the number of elements successfully read. fid is an integer file identifier obtained from fopen.
size is an optional argument that determines how much data is read. If size is not specified, fread reads to the end of the file. Valid options are:fread reaches the end of the file and the current input stream does not contain enough bits to write out a complete matrix element of the specified precision, fread pads the last byte or element with zero bits until the full value is obtained. If an error occurs, reading is done up to the last full value.
precision is a string representing the numeric precision of the values read, precision controls the number of bits read for each value and the interpretation of those bits as an integer, a floating-point value, or a character. The precision string may contain a positive integer repetition factor of the form 'n*' which prepends one of the strings above, like '40*uchar'. If precision is not specified, the default 'uchar' (8-bit unsigned character) is assumed. See "Remarks" for more information.
[A,count] = fread(fid,size,precision,skip)
includes an optional skip argument that specifies the number of bytes to skip after each precision value is read. With the skip argument present, fread reads in one value and does a skip of input, reads in another value and does a skip of input, etc. for at most size times. This is useful for extracting data in noncontiguous fields from fixed length records. If precision is a bit format like 'bitN' or 'ubitN', skip is specified in bits.
Remarks
Numeric precisions can differ depending on how numbers are represented in your computer's architecture, as well as by the type of compiler used to produce executable code for your computer. The tables below give C-compliant, platform-independent numeric precision string formats that you should use whenever you want your code to be portable. For convenience, MATLAB accepts some C and Fortran data type equivalents for the MATLAB precisions listed. If you are a C or Fortran programmer, you may find it more convenient to use the names of the data types in the language with which you are most familiar
Two formats map to an input stream of bits rather than bytes.| MATLAB |
C or Fortran |
Interpretation |
|
|
Signed integer; N bits (1 N 64) |
|
|
Unsigned integer; N bits (1 N 64) |
See Also
fclose, ferror, fopen, fprintf, fread, fscanf, fseek, ftell, fwrite