# matfile_varreadnext

Reads next variable in a Matlab binary MAT-file.

## Calling Sequence

    [name[, value[, vartype]]] = matfile_varreadnext(fd)

## Arguments

fd

  Real: file descriptor (returned by matfile_open).

name

  String: name of the variable read or `""` if reading failed.

value

  Any Scilab type: value of the variable read or an empty matrix if reading failed.

vartype

  Real: type of the variable if reading succeeds or:

  - 0: if the variable type is unknown.

  - -1: if end of file has been reached.

## Description

Reads next variable in a Matlab binary MAT-file opened by matfile_open.

## Examples

    A = rand(10,10);
    B = sprand(10,10,0.1);
    C = "foo";
    D = "bar";
    savematfile('test_matfile.mat','A','B','C','D','-v6');
    clear();
    fd = matfile_open("test_matfile.mat");
    //-- Loop on the stored variables
    while %t
       [Name, Value, Type] = matfile_varreadnext(fd);
       if Name == "" then
          break;
       else
          disp("The variable " + Name + " has type " + string(Type) + " and contains:");
          disp(Value);
       end
    end
    matfile_close(fd);

## See Also

- matfile_open
- matfile_close
- matfile_varwrite
- matfile_listvar

## Bibliography

This function uses MATIO library ( `http://sourceforge.net/projects/matio/` ).