Scilab Reference Manual |
---|
mget, mgeti — reads byte or word in a given binary format and convert to double
x=mget([n,type,fd]) x=mgeti([n,type,fd])
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 |
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. |
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);
<< mgetstr | mopen >> |