Пользовательские приложения к доступу к MAT-файлам

Почему пользовательские приложения записи?

Чтобы принести данные в приложение MATLAB®, см. Методы для того, чтобы Импортировать Данные. Чтобы сохранить данные к MAT-файлу, смотрите, Сохраняют и Переменные Рабочей области Загрузки. Используйте эти процедуры, когда вы программируете свое целое приложение в MATLAB, или если вы осуществляете обмен данными с другими пользователями MATLAB. Существуют ситуации, однако, когда необходимо написать пользовательскую программу, чтобы взаимодействовать с данными. Например:

  • Ваши данные имеют пользовательский формат.

  • Вы создаете приложения для пользователей, которые не запускают MATLAB, и вы хотите предоставить им данные MATLAB.

  • Вы хотите считать данные из внешнего приложения, но у вас нет доступа к исходному коду.

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

Если эти функции не достаточны, можно создать пользовательские программы C/C++ или Фортрана, чтобы читать и записать данные файлы в формате, требуемом приложением. Существует два типа пользовательских программ:

Библиотека интерфейса MAT-файла

API MAT-файла содержит стандартные программы для чтения и записи MAT-файлов. Вызовите эти стандартные программы из своих собственных программ C/C++ и Фортрана. Используйте эти стандартные программы, вместо того, чтобы попытайтесь записать ваш собственный код, выполнить эти операции, начиная с пользования библиотекой изолирует ваши приложения от будущих изменений до структуры MAT-файла. Для получения дополнительной информации смотрите Библиотеку API MAT-файла и Включайте Файлы.

MATLAB обеспечивает тип MATFile для представления MAT-файла.

Стандартные программы MAT-файла

API-функция MAT-файла

Цель

matOpen

Откройте MAT-файл.

matClose

Закройте MAT-файл.

matGetDir

Получите список массивов MATLAB из MAT-файла.

matGetVariable

Считайте массив MATLAB из MAT-файла.

matPutVariable

Запишите массив MATLAB в MAT-файл.

matGetNextVariable

Считайте следующий массив MATLAB из MAT-файла.

matDeleteVariable

Удалите массив MATLAB из MAT-файла.

matPutVariableAsGlobal

Поместите массив MATLAB в MAT-файл, таким образом, что команда load помещает его в глобальную рабочую область.

matGetVariableInfo

Загрузите заголовок массивов MATLAB из MAT-файла (никакие данные).

matGetNextVariableInfo

Загрузите следующий заголовок массивов MATLAB из MAT-файла (никакие данные).

MAT-файл стандартные программы C-Only

matGetFp

Получите указатель файла ANSI® C на MAT-файл.

Библиотека Интерфейса MAT-файла не поддерживает объекты MATLAB, созданные пользовательскими классами.

Не создавайте различные сеансы работы с MATLAB на различных потоках с помощью API-функций MAT-файла. Библиотеки MATLAB не мультиориентированы на многопотоковое исполнение, таким образом, можно использовать эти функции только на одном потоке за один раз.

Обмен файлами данных между платформами

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

Оба типа файлов могут быть транспортированы непосредственно между машинами: исходные файлы MATLAB, потому что они независимы от платформы, и MAT-файлы, потому что они содержат подпись машины в заголовке файла. MATLAB проверяет подпись, когда это загружает файл и, если подпись указывает, что файл является внешним, выполняет необходимое преобразование.

Используя MATLAB через различную машину архитектура требует средства для обмена и двоичный файл и данные о ASCII между машинами. Примеры этого типа средства включают FTP, NFS и Кермита. При использовании этих программ, стараться передать MAT-файлы в режиме двоичного файла и исходные файлы MATLAB в режиме ASCII-файла. Отказ установить эти режимы правильно повреждает данные.