Name

mget — reads byte or word in a given binary format and convert to double

mgeti — reads byte or word in a given binary format return an int type

Calling Sequence

x=mget([n,type,fd])
x=mgeti([n,type,fd])

Parameters

n

a positive scalar: The number of items to be read.

fd

a scalar. The fd parameter returned by the function mopen. -1 stands for last opened file. Default value is -1.

type

a string. Give the binary format used to write all the entries of x.

x

a vector of floating point or integer type numbers

Description

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"):

Note , 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:

d

double

f

float

l

long

i

int

s

short

c

character

Optional flag:

u..

unsigned (in combination with one of the above types)

..l

little endian (in combination with one of the above types)

..b

big endian (in combination with one of the above types)

Bytes read are automatically swapped if necessary (by checking little=endian status).

This default swapping behavior can be suprressed by adding a flag in the mopen function.

Formats "l", "d", and "f" are only valid with the mget function.

Examples

 
file1 = 'test1.bin';
file2 = '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);
 

See Also

mclose, meof, mfprintf, fprintfMat, mfscanf, fscanfMat, mgetl, mgetstr, mopen, mprintf, mput, mputl, mputstr, mscanf, mseek, mtell, mdelete