matlab.io.saveVariablesToScript

Сохранение переменных рабочей области в СКРИПТ MATLAB

Синтаксис

matlab.io.saveVariablesToScript(filename)
matlab.io.saveVariablesToScript(filename,varnames)
matlab.io.saveVariablesToScript(filename,Name,Value)
[r1,r2] = matlab.io.saveVariablesToScript(filename)

Описание

пример

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 abfile.m.

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

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

y = 15.7;
z = 3 * pi;
matlab.io.saveVariablesToScript('yzfile.m',{'y','z'},...
'SaveMode','update')

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

resistance = [10 20.5 11 13.7 15.1 7.7];
matlab.io.saveVariablesToScript('designData.m','resistance',...
'SaveMode','Update','MaximumArraySize',5,...
'MaximumNestingLevel',5,'MaximumTextWidth',30)

Задайте 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];

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

matlab.io.saveVariablesToScript('autoVariables.m','RegExp','autoL*')

Создайте две переменные, 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 = 

    'level1'
    'level2'
    'level3'
    'my3Dtable'


r2 = 

   Empty cell array: 0-by-1

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

свернуть все

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

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

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

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

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

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (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' — Save к новому скрипту MATLAB.

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

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

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

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

свернуть все

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

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

Ограничения

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

    • Объекты Java

    • Объекты.NET

    • Объекты Python

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

    • Объекты MATLAB

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

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

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