exportImpl

Класс: Simulink.io.FileType
Пакет: Simulink.io

Экспорт сигналов в файл

Синтаксис

[didWrite,errMsg] = exportImpl(exportFileName,varNames,varValues,isAppend)

Описание

[didWrite,errMsg] = exportImpl(exportFileName,varNames,varValues,isAppend) экспортирует сигналы из Редактор с помощью заданных переменных и возвращает didWrite и errMsg и сохраняет их, чтобы exportFileName.

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

расширить все

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

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

Имена сигналов, заданные как массив ячеек из векторов символов.

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

Значения сигналов, сопоставленные с сигналами в varNames, заданный как массив ячеек сигнальных переменных поддерживаемых типов. Дополнительные сведения о поддерживаемых типах см. в разделах Выбор базового рабочего пространства и Формат MAT-файлов.

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

Добавьте или перезаписайте файл сигнала, заданный как true (1) или false (0).

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

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

расширить все

Были ли сигналы успешно записаны в exportFileName, возвращенный как true (1) или false (0).

Сообщение об ошибке, указывающее на ошибки в процессе создания отчетов, возвращается в виде символьного массива.

Примеры

расширить все

Подкласс FileType классифицировать и реализовывать exportImpl способ.

classdef MySignalMatFile < Simulink.io.FileType

Реализуйте статический метод exportImpl.

methods
        
        function [didWrite,errMsg] = exportImpl(obj,fileName,cellOfVarNames, ...
                cellOfVarValues,isAppend)
            didWrite = false;
            errMsg = '';
            
            saveStruct = struct;
            
            for k = 1: length (cellOfVarNames)
                saveStruct.(cellOfVarNames{k}) = cellOfVarValues{k};
            end
            
            try
                if isAppend
                    save(fileName,'-struct','saveStruct','-append');
                else
                    save(fileName,'-struct','saveStruct');
                end
                didWrite = true;
            catch ME
                
                % Optional, return errMsg or throw hard error.
                % Returning an error message allows your automated
                % processes to carry on while allowing you to report the
                % error at a later time.
                errMsg = ME.message;
            end
            
        end
    end
end
Введенный в R2020a