reads byte or word in a given binary format and converts to a double type
reads byte or word in a given binary format and returns an int type
x = mget([n, type, fd]) x = mgeti([n, type, fd])
a positive integer scalar: the number of items to be read.
a scalar: a file descriptor returned by the function mopen
. -1
stands for last opened file. Default value is
-1
.
a string: the binary format used to write all the entries of
x
.
a vector of floating point or integer numbers.
The mget
function reads data in the input
specified by the stream parameter fd
and returns a
vector of floating point data.
The mgeti
function reads data in the input
specified by the stream parameter fd
and returns a
vector of integer data.
Data is read at the position at which the file pointer is currently pointing and advances the indicator appropriately.
The type
parameter is a conversion specifier
which may be set to any of the following flag characters (with default
value "l"
):
![]() | On Windows, default behavior is to skip byte 13 ( 0x0D ).
mopen should be called with the
'b' option, e.g.
fd1 = mopen(file1,'rb') , so that all bytes will be read
without exception. |
Data type:
double
float
long long int
int or long int
short
character
Optional flag:
unsigned (in combination with one of the above types)
little endian (in combination with one of the above types)
big endian (in combination with one of the above types)
Bytes read is automatically swapped if necessary (by checking
little=endian
status).
This default swapping behavior can be suppressed by adding a flag in
the mopen
function.
Formats "l"
, "d"
and
"f"
are only valid with the
mget
function.
file1 = fullfile(TMPDIR,'test1.bin'); file2 = fullfile(TMPDIR,'test2.bin'); fd1=mopen(file1,'wb'); fd2=mopen(file2,'wb'); mput(1996,'ull',fd1); mput(1996,'ull',fd2); mclose(fd1); mclose(fd2); fd1=mopen(file1,'rb'); if 1996<>mget(1,'ull',fd1) write(%io(2),'Bug'); end fd2=mopen(file2,'rb'); if 1996<>mget(1,'ull',fd2) write(%io(2),'Bug'); end mclose(fd1); mclose(fd2); | ![]() | ![]() |