importFromFile

Класс: Simulink.data.dictionary. Раздел
Пакет: Simulink.data.dictionary

Импортируйте переменные из MAT-файла или файла MATLAB к разделу словаря данных

Синтаксис

importedVars = importFromFile(sectionObj,fileName)
importedVars = importFromFile(sectionObj,fileName,'existingVarsAction',existAction)
[importedVars,existingVars] = importFromFile(___)

Описание

importedVars = importFromFile(sectionObj,fileName) переменные импорта задали в MAT-файле или файле MATLAB fileName к разделу sectionObj словаря данных, не перезаписывая переменных, которые уже находятся в целевом разделе. Если какие-либо переменные уже находятся в целевом разделе, функция выводит предупреждение и список в Окне Команды MATLAB. Этот синтаксис возвращает список переменных, которые были успешно импортированы. Переменная рассматривается успешно импортированной, только если importFromFile присваивает значение переменной к соответствующей записи в целевом словаре данных.

importedVars = importFromFile(sectionObj,fileName,'existingVarsAction',existAction) переменные импорта, которые уже находятся в целевом разделе путем принятия заданных мер existAction. Например, можно принять решение использовать значения переменных в конечном файле, чтобы перезаписать соответствующие значения в целевом разделе.

[importedVars,existingVars] = importFromFile(___) возвращает список переменных в целевом разделе, которые не были перезаписаны. Используйте этот синтаксис, если existingVarsAction установлен в 'none', значение по умолчанию, которое препятствует тому, чтобы были перезаписаны существующие словарные статьи.

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

развернуть все

Целевой раздел словаря данных, заданный как объект Simulink.data.dictionary.Section. Прежде чем вы будете использовать эту функцию, будете представлять целевой раздел с объектом Simulink.data.dictionary.Section при помощи, например, функция getSection.

Имя целевого MAT или файла MATLAB, заданного как вектор символов. importFromFile автоматически предоставляет расширение файла .mat, если вы не задаете расширение.

Пример: 'myFile.mat'

Пример: 'myFile.m'

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

Действие, чтобы взять для существующих переменных словаря, заданных как 'none', 'overwrite' или 'error'.

Если вы задаете 'none', importFromFile пытается импортировать целевые переменные, но не импортирует или вносит любые изменения в переменные, которые уже находятся в разделе словаря данных.

Если вы задаете 'overwrite', importFromFile импортирует все целевые переменные и перезаписывает любые переменные, которые уже находятся в разделе словаря данных.

Если вы задаете 'error', importFromFile возвращает ошибку, не импортируя переменных, если какие-либо целевые переменные уже находятся в разделе словаря данных.

Пример: 'overwrite'

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

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

развернуть все

Имена успешно импортированных переменных, возвращенных как массив ячеек из символьных векторов. Переменная рассматривается успешно импортированной, только если importFromFile присваивает свое значение соответствующей записи в целевом словаре данных.

Имена целевых переменных, которые не были импортированы из-за их существования в целевом словаре данных, возвратились как массив ячеек из символьных векторов. existingVars имеет содержимое, только если existAction установлен в 'none', который является также значением по умолчанию. В этом случае importFromFile импортирует только переменные, которые уже не находятся в целевом словаре данных.

Примеры

развернуть все

Представляйте раздел Design Data словаря данных myDictionary_ex_API.sldd с объектом Simulink.data.dictionary.Section под названием dDataSectObj.

myDictionaryObj = Simulink.data.dictionary.open('myDictionary_ex_API.sldd');
dDataSectObj = getSection(myDictionaryObj,'Design Data');

Импортируйте все переменные, содержимые в файле myData_ex_API.m к словарю данных, и возвратите список успешно импортированных переменных. Если какие-либо переменные уже находятся в myDictionary_ex_API.sldd, importFromFile возвращает предупреждение и список затронутых переменных.

importFromFile(dDataSectObj,'myData_ex_API.m')
Warning: The following variables were not imported because
they already exist in the dictionary:
   fuelFlow 

ans = 

    'myFirstEntry'
    'mySecondEntry'
    'myThirdEntry'

Представляйте раздел Design Data словаря данных myDictionary_ex_API.sldd с объектом Simulink.data.dictionary.Section под названием dDataSectObj.

myDictionaryObj = Simulink.data.dictionary.open('myDictionary_ex_API.sldd');
dDataSectObj = getSection(myDictionaryObj,'Design Data');

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

importFromFile(dDataSectObj,'myData_ex_API.m','existingVarsAction','overwrite')
ans = 

    'fuelFlow'
    'myFirstEntry'
    'mySecondEntry'
    'myThirdEntry'

Возвратите список переменных, которые не импортируются из файла, потому что они уже находятся в целевом словаре данных

Представляйте раздел Design Data словаря данных myDictionary_ex_API.sldd с объектом Simulink.data.dictionary.Section под названием dDataSectObj.

myDictionaryObj = Simulink.data.dictionary.open('myDictionary_ex_API.sldd');
dDataSectObj = getSection(myDictionaryObj,'Design Data');

Импортируйте все переменные, содержимые в файле myData_ex_API.m к словарю данных. Задайте имена для выходных аргументов importFromFile, чтобы возвратить имена успешно и неудачно импортированные переменные.

[importedVars,existingVars] = importFromFile(dDataSectObj,'myData_ex_API.m')
importedVars = 

    'myFirstEntry'
    'mySecondEntry'
    'myThirdEntry'


existingVars = 

    'fuelFlow'

importFromFile не импортирует переменную fuelflow, потому что это уже находится в целевом словаре данных.

Советы

  • importFromFile может импортировать переменные MATLAB, созданные из перечислимых типов данных, но не может импортировать определения перечислимых типов. Используйте функцию importEnumTypes, чтобы импортировать перечисленные определения типов к словарю данных. Если вы импортируете переменные перечислимых типов данных к словарю данных, но не импортируете определения перечислимого типа, словарь является менее портативным и не может функционировать правильно, если используется кем-то еще.

Альтернативы

Можно использовать Model Explorer, чтобы импортировать переменные к словарю данных из файла. Смотрите Импортируют Данные к Словарю из Файла для получения дополнительной информации.

Представленный в R2015a