| MATLAB Function Reference | Search  Help Desk |
| fread | See Also |
[A,count] = fread(fid,size,precision) [A,count] = fread(fid,size,precision,skip)
[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 is '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.
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 steam of bits rather than bytes:| MATLAB |
C or Fortran |
Interpretation |
|
|
Signed integer; N bits (1 N 64) |
|
|
Unsigned integer; N bits (1 N 64) |
fclose Close one or more open files
ferror Query MATLAB about errors in file input or output
fopen Open a file or obtain information about open files
fprintf Write formatted data to file
fscanf Read formatted data from file
fseek Set file position indicator
ftell Get file position indicator
fwrite Write binary data from a MATLAB matrix to a file