Scilab Function 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
: 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"):
"l","i","s","ul","ui","us","d","f","c","uc"
: for reading respectively a long, an int, a short, an unsigned long, an unsigned int, an unsigned short, a double, a float, a char and an unsigned char. The bytes which are read are automatically swapped if necessary (by checking little-endian status). This default swapping mode can be suppressed by adding a flag in the mopen function. Format "l", "d" and "f" are valid only with the mget function.
"..l" or "..b"
: It is also possible to read in little-endian or big-endian mode by adding a 'l' or 'b' character at the end of a type specification. For example "db" will read a double in big-endian mode.
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