matlab.io.saveVariablesToScript

Сохранение переменных рабочей области в скрипт MATLAB

Описание

пример

matlab.io.saveVariablesToScript(filename) сохраняет переменные в текущей рабочей области к MATLAB® скрипт под названием filename.m. Имя файла может включать .m суффикс. Если вы не включаете его, функция добавляет его, когда это создает файл.

Переменные, для которых MATLAB не может сгенерировать код, сохранены в MAT-файл под названием filename.mat.

Если файл с тем же именем уже существует, это перезаписывается.

пример

matlab.io.saveVariablesToScript(filename,varnames) сохраняет только переменные рабочей области, заданные varnames к скрипту MATLAB.

пример

matlab.io.saveVariablesToScript(filename,Name,Value) дополнительные опции использования заданы одним или несколькими Name,Value парные аргументы.

[r1,r2] = matlab.io.saveVariablesToScript(filename) дополнительно возвращает два массива ячеек:

  • r1 для переменных, которые были сохранены в скрипт MATLAB

  • r2 для переменных, которые были сохранены в MAT-файл

Примеры

свернуть все

Сохраните переменные от рабочей области до скрипта MATLAB, test.m.

matlab.io.saveVariablesToScript('test.m')

Создайте и сохраните переменную myVar от рабочей области до скрипта MATLAB, test.m.

myVar = 55.3;
matlab.io.saveVariablesToScript('test.m','myVar')

Создайте две переменные, a и b, и сохраните их в существующий скрипт MATLAB test.m.

a = 72.3;
b = pi;
matlab.io.saveVariablesToScript('test.m',{'a','b'},...
'SaveMode','append')

Обновите и сохраните две переменные, a и b, к существующему скрипту MATLAB test.m.

a = 15.7;
b = 3 * pi;
matlab.io.saveVariablesToScript('test.m',{'a','b'},...
'SaveMode','update')

Сохраните переменную resistance к существующему скрипту MATLAB test.m при определении настройки файла скрипта.

resistance = [10 20.5 11 13.7];
matlab.io.saveVariablesToScript('test.m','resistance',...
'SaveMode','append','MaximumArraySize',5,...
'MaximumNestingLevel',5,'MaximumTextWidth',35)

Задайте 2D срез для выхода трехмерного массива my3Dtable, таким образом, что 2D срез расширяется по первым и третьим измерениям. Сохраните 2D срез в sliceData.m скрипта MATLAB.

level1 = [1 2; 3 4];
level2 = [5 6; 7 8];
my3Dtable( :, :, 1) = level1;
my3Dtable( :, :, 2) = level2;
matlab.io.saveVariablesToScript('sliceData.m','MultidimensionalFormat',[1,3])

Получившийся код MATLAB похож на следующее:

level1 = ...
  [1 2;
   3 4];

level2 = ...
  [5 6;
   7 8];

my3Dtable = zeros(2, 2, 2);
my3Dtable(:,1,:) = ...
  [1 5;
   3 7];
my3Dtable(:,2,:) = ...
  [2 6;
   4 8];

Сохраните переменные, которые совпадают с выражением level* к levelVariables.m скрипта MATLAB.

matlab.io.saveVariablesToScript('levelVariables.m','RegExp','level*')

Создайте две переменные, p и q, и сохраните их в версию 7.3 скрипт MATLAB version73.m.

p = 49;
q = 35.5;
matlab.io.saveVariablesToScript('version73.m',{'p','q'},...
'MATFileVersion','v7.3')

Сохраните переменные, которые были сохранены в скрипт MATLAB к переменной r1, и те, которые были сохранены в MAT-файл к переменной r2.

[r1,r2] = matlab.io.saveVariablesToScript('mydata.m')
r1 =

  5×1 cell array

    {'level1'   }
    {'level2'   }
    {'my3Dtable'}
    {'p'        }
    {'q'        }


r2 =

  0×1 empty cell array

Входные параметры

свернуть все

Имя скрипта MATLAB для сохранения переменных в виде строки, дающей имя файла или переменную, содержащую имя файла.

Пример: matlab.io.saveVariablesToScript('myVariables.m')

Имя переменных, чтобы сохранить в виде строки или массива ячеек.

Пример: {'X','Y','Z'}

Типы данных: char | cell

Аргументы name-value

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'MaximumArraySize',500,'MATFileVersion','v4' указывает, что максимальным количеством элементов массива, чтобы сохранить является 500 использование синтаксиса версии 4 MATLAB.

Версия MATLAB, чей синтаксис, чтобы использовать для сохранения MAT-файлов в виде разделенной запятой пары, состоящей из 'MATFileVersion' и одни из следующих номеров версий:

  • 'v4'

  • 'v6'

  • 'v7'

  • 'v7.3'

Пример: 'MATFileVersion','v6'

Типы данных: char

Максимальные элементы массива, чтобы сохранить в виде разделенной запятой пары, состоящей из 'MaximumArraySize' и целое число в области значений 1 - 10 000.

Пример: 'MaximumArraySize',1050

Максимальное количество уровней объектов или иерархий массивов, чтобы сохранить в виде разделенной запятой пары, состоящей из 'MaximumNestingLevel' и целое число в области значений 1 - 200.

Пример: 'MaximumNestingLevel',67

Текст переносит ширину во время сохранения в виде разделенной запятой пары, состоящей из 'MaximumTextWidth' и целое число в области значений 32 - 256.

Пример: 'MaximumTextWidth',82

Размерности 2D срезов, которые представляют n-D массивы char, логики или числовых данных в виде разделенной запятой пары, состоящей из 'MultidimensionalFormat' и одно из этих значений:

  • 'rowvector' — Сохраните многомерные переменные как вектор одной строки.

  • integer cell array — Сохраните 2D срез многомерных переменных, где размерности удовлетворяют всем следующим критериям:

    • Два положительных целых числа представляют размерности.

    • Эти два целых числа меньше чем или равны размерностям n-D массива.

    • Второе целое число больше первого.

Пример: 'MultidimensionalFormat',[1,3]

Регулярное выражение для соответствия в виде разделенной запятой пары, состоящей из 'RegExp' и одно или несколько выражений, данных как строка.

Пример: 'RegExp','level*'

Типы данных: char

Режим, чтобы сохранить скрипт MATLAB в виде разделенной запятой пары, состоящей из SaveMode и одно из этих значений:

  • 'create' — Сохраните переменные в новый скрипт MATLAB.

  • 'update' — Только обновите переменные, которые уже присутствуют в скрипте MATLAB.

  • 'append' — Обновите переменные, которые уже присутствуют в скрипте MATLAB и добавляют новые переменные в конец скрипта.

Пример: 'SaveMode','Update'

Выходные аргументы

свернуть все

Переменные, которые были сохранены в скрипт MATLAB, возвратились как массив ячеек имен переменных.

Переменные, которые были сохранены в MAT-файл, возвратились как массив ячеек имен переменных.

Ограничения

  • matlab.io.saveVariablesToScript не сохраняет следующие переменные в скрипт MATLAB или MAT-файл.

    • Объекты Java

    • Объекты.NET

    • Объекты Python

  • matlab.io.saveVariablesToScript сохраняет следующие переменные только в MAT-файл.

    • Объекты MATLAB

    • Указатели на функции

    • Анонимные функции

Если у вас есть Simulink®, можно использовать matlab.io.saveVariablesToScript сохранить переменные, которые используют ваши модели. Однако, если вы сохраняете много переменных, сгенерированный файл MATLAB может содержать много строк кода и занять много времени, чтобы выполниться. Чтобы избежать долгого времени выполнения, рассмотрите эти альтернативы:

Введенный в R2014a