Считайте заголовок файла
Считайте данные о заголовке из двоичного файла с помощью readHeader
функция.
Запишите заголовок, сопровождаемый по условию к двоичному файлу под названием myfile.dat
. Заголовок является матрицей 1 на 4 значений двойной точности, сопровождаемых вектором 5 на 1 значений с одинарной точностью. Данные являются последовательностью 1 000 значений с двойной точностью.
fid = fopen('myfile.dat','w'); fwrite(fid,[1 2 3 4],'double'); fwrite(fid,single((1:5).'),'single'); fwrite(fid,(1:1000).','double'); fclose(fid);
Считайте заголовок с помощью dsp.BinaryFileReader
объект. Задайте ожидаемую структуру заголовка. Эта структура задает только формат ожидаемого заголовка двоичного файла и не содержит точные значения.
reader = dsp.BinaryFileReader('myfile.dat'); s = struct('A',zeros(1,4),'B',ones(5,1,'single')); reader.HeaderStructure = s;
Считайте заголовок с помощью readHeader
функция.
H = readHeader(reader);
fprintf('H.A: ')
H.A:
fprintf('%d ',H.A);
1 2 3 4
fprintf('\nH.A datatype: %s\n',class(H.A))
H.A datatype: double
fprintf('H.B: ')
H.B:
fprintf('%d ',H.B);
1 2 3 4 5
fprintf('\nH.B datatype: %s\n',class(H.B))
H.B datatype: single
reader
— Читатель двоичного файлаdsp.BinaryFileReader
Система object™
Объект читателя двоичного файла, заданный как dsp.BinaryFileReader
Системный объект.
header
— Структура заголовкаСтруктура заголовка двоичного файла, возвращенного как структура. Каждое поле структуры является действительной матрицей встроенного типа. Например, если вы задаете HeaderStructure
свойство dsp.BinaryFileReader
возразите против struct('field1',1:10,'field2',single(1))
, объект пишет заголовок, сформированный 10 значениями с двойной точностью, (1:10), сопровождаемый одним значением одинарной точности, одним (1). Если вы не задаете заголовок, объект возвращает пустую структуру, struct([])
.
Типы данных: struct
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.