Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
6.1.0 - English

Change language to:
Français - 日本語 - Português - Русский

Please note that the recommended version of Scilab is 2024.1.0. This page might be outdated.
See the recommended documentation of this function

Scilab Help >> Files : Input/Output functions > mget

mget

reads byte or word in a given binary format and converts to a double type

mgeti

reads byte or word in a given binary format and returns an int type

Syntax

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

Arguments

n

a positive integer scalar: the number of items to be read.

fd

a scalar: a file descriptor returned by the function mopen. -1 stands for last opened file. Default value is -1.

type

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

x

a vector of floating point or integer 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"):

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 long int

i

int or long 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 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.

Examples

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);

See also

  • mclose — closes an opened file
  • meof — checks if end of file has been reached
  • mfprintf — converts, formats, and writes data to a file
  • fprintfMat — writes a matrix in a file
  • mfscanf — reads input from the stream pointer stream (interface to the C fscanf function)
  • fscanfMat — reads a matrix from a text file
  • mgetl — reads lines from an text file
  • mgetstr — reads a character string from a file
  • mopen — opens a file in Scilab
  • mprintf — converts, formats, and writes data to the main scilab window
  • mput — writes byte or word in a given binary format
  • mputl — writes strings in a text file
  • mputstr — writes a character string in a file
  • mseek — sets current position in a binary file
  • mtell — Returns the offset of the current byte relative to the beginning of a file
  • mdelete — deletes file(s)
Report an issue
<< mfscanf Files : Input/Output functions mgetl >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Tue Feb 25 08:49:20 CET 2020