Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Français - Português - 日本語 -
Справка Scilab >> Файлы: функции ввода/вывода > listvarinfile

listvarinfile

список переменных в файле сохранённых данных

Синтаксис

listvarinfile(filename);
[names, typs, dims, vols] = listvarinfile(filename)

Аргументы

filename

символьная строка, имя файла (и путь), который следует проинспектировать.

nams

матрица строк, имена переменных, сохранённых в файле filename.

dims

список, размерности переменных, сохранённых в файле filename.

typs

числовая матрица, типы переменных, сохранённых в файле filename.

vols

числовая матрица, размер (в байтах) переменных, сохранённых в файле filename.

Описание

Эта служебная функция составляет список переменных (наподобие whos), сохранённых в файле данных Scilab'а, созданного с помощью save.

рациональные числа и пространства состояний представляются в виде простых типизированных списков (tlist);

Примеры

// Подготовка данных различных типов:
b = rand(2,3) < 0.5;                    // логические значения
i = uint64(grand(3,4,2,"uin",0,100));   // гиперматрица кодированных целых чисел
c = grand(3,3,"uin",-10,10); c=c+c'*%i; // комплексые числа
p = (1-%z).^(0:3);                      // полиномы
r = p/(1+%z);                           // рациональные значения
sp = sprand(10,15,0.1);                 // разрежённая матрица чисел
spb = sp<0.5;                           // разрежённая матрица логических значений
t = ["This" "software" ; "is" "Scilab"];// текстовые строки
g = [gdf() gda()];                      // графические дескрипторы
function Test()                         // сценарий
    disp("listvarinfile() test for macros")
end
M = linspace;                           // сценарий
L = list(%f, int8(-23),, %i-%z, list("abc",%e)); // простой список
C = {"abc" %t ; %z list(1/%z, 4)};      // cell-массив
S(4,2).r = %pi;                         // массив структур
vars = list("b","i","c","p","r","sp","spb","t","g","Test","M","L","C","S");

// Архивация данных в бинарном файле:
File = TMPDIR + "\listvarinfile.sod";
save(File, vars(:))

// Распечатка содержимого файла:
[names,types,dims,vols] = listvarinfile(File);
types(find(names=="Test"))
dims(find(names=="i"))
--> [names,types,dims,vols] = listvarinfile(File);
Name                     Type           Size            Bytes
-------------------------------------------------------------
C                        cell           2 by 2          76
L                        list           4               51
M                        macro          1 by 1          0
S                        struct         4 by 2          8
Test                     macro          1 by 1          0
b                        boolean        2 by 3          24
c                        double         3 by 3          144
g                        handle         1 by 2          0
i                        integer        3 by 4 by 2     192
p                        polynomial     1 by 4          80
r                        tlist          4               162
sp                       sparse         10 by 15        232
spb                      boolean sparse 10 by 15        624
t                        string         2 by 2          40

--> types(find(names=="Test"))
 ans  =
   13.

--> dims(find(names=="i"))
 ans  =
   3.   4.   2.

Смотрите также

  • save — Saves some chosen variables in a binary data file
  • load — Loads some archived variables, a saved graphic figure, a library of functions
  • save_format — формат файлов, полученных с помощью функции "save"
  • type — возвращает тип переменной
  • whos — список переменных в длинной форме
  • who — список переменных

История

ВерсияОписание
6.0
  • Теперь гиперматрицы перечисляются с типом их содержимого, вместо "mlist" и типа 17. Их размеры теперь являются фактическими размерами вместо 3.
  • Cell-массивы и массивы структур теперь появлются в виде "cell" и "struct" вместо "mlist". Теперь их размеры являются фактичскими размерами вместо 3.
  • Массивы графических дескрипторов теперь появляются в виде "handle" и типа 9 вместо "tlist" и типа 16. Теперь их размеры являются фактичскими размерами вместо 3.
  • Сценарии теперь появляются в виде "macro" и типа 13 вместо "tlist" и типа 16.
  • Вещественные и комплексные числа теперь появляются в виде "double" вместо "constant".
Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Feb 14 15:05:03 CET 2019