scanstr

Считайте данные из инструмента, отформатируйте как текст, и синтаксический анализ

Синтаксис

A = scanstr(obj)
A = scanstr(obj,'delimiter')
A = scanstr(obj,'delimiter','format')
[A,count] = scanstr(...)
[A,count,msg] = scanstr(...)

Аргументы

obj

Интерфейсный объект.

'delimiter'

Один или несколько разделителей раньше анализировали данные.

формат

Спецификация преобразования языка C.

A

Данные считаны из инструмента и отформатированы как текст.

count

Количество чтения значений.

msg

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

Описание

A = scanstr(obj) отформатированные данные чтений от инструмента, соединенного с obj, анализируют данные с помощью и запятой и разделителя точки с запятой, и возвращают данные в массив ячеек A. Каждый элемент массива ячеек полон решимости быть или двойным или вектором символов.

A = scanstr(obj,'delimiter') анализирует данные в отдельные переменные на основе заданного delimiter. delimiter может быть отдельным символом или массивом вектора символов. Если delimiter является массивом вектора символов, то каждый символ в массиве используется в качестве разделителя.

A = scanstr(obj,'delimiter','format') преобразовывает данные согласно заданному format. A может быть матрицей или массивом ячеек в зависимости от format. Смотрите справку textread для полных деталей. format является преобразованием языка C строки, содержащей спецификации.

Спецификации преобразования включают символ % и символы преобразования d, i, o, u, x, X, f, e, E, g, G, c, и s. Смотрите спецификации формата файлового ввода-вывода sscanf или руководство C для полных деталей.

Если format не задан, то лучший формат (или двойное или вектор символов) выбран.

[A,count] = scanstr(...) возвращает количество чтения значений к count.

[A,count,msg] = scanstr(...) возвращает предупреждающее сообщение в msg, если операция чтения не завершалась успешно.

Примеры

Создайте объект GPIB g, сопоставленный с платой National Instruments® с индексом 0 и первичным адресом 2, и соедините g с осциллографом Tektronix® TDS 210.

g = gpib('ni',0,2);
fopen(g)

Возвратите идентификационную информацию, чтобы разделить элементы массива ячеек с помощью разделителей по умолчанию.

fprintf(g,'*IDN?');
idn = scanstr(g)
idn = 
    'TEKTRONIX'
    'TDS 210'
    [        0]
    'CF:91.1CT FV:v1.16 TDS2CM:CMV:v1.04'

Советы

Прежде чем можно будет считать данные из инструмента, они должны быть соединены с obj с функцией fopen. Связанный интерфейсный объект имеет значение свойства Status open. Ошибка возвращена, при попытке выполнить операцию чтения, в то время как obj не соединяется с инструментом.

Если msg не включен как выходной аргумент, и операция чтения не была успешна, то предупреждающее сообщение возвращено в командную строку.

Значение свойства ValuesReceived увеличено количеством чтения значений — включая терминатор строки — каждый раз, когда scanstr выпущен.

Примечание

Чтобы получить список опций, можно использовать на функции, нажать клавишу Tab после ввода функции на командной строке MATLAB®. Список расширяется, и можно прокрутить, чтобы выбрать свойство или значение. Для получения информации об использовании этой функции завершения вкладки "Дополнительно" смотрите Используя Заполнение клавишей Tab для Функций.

Представлено до R2006a