exponenta event banner

читать

Класс: matlab.io.datastore.DsFileReader
Пакет: matlab.io.datastore

Чтение байтов из файла

Синтаксис

A = read(fr,size)
A = read(fr,size,Name,Value)
[A,count] = read(___)

Описание

A = read(fr,size) возвращает данные из файла, представленного объектом чтения файлов fr. Число байт, указанное в size определяет объем считываемых данных.

A = read(fr,size,Name,Value)задает дополнительные параметры, используя один или несколько аргументов пары имя-значение. Например, можно указать тип вывода из операции чтения, который должен быть char путем указания 'OutputType','char'.

[A,count] = read(___) возвращает число байтов данных, которые были фактически прочитаны read способ.

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

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

Объект чтения файлов, указанный как matlab.io.datastore.DsFileReader объект. Создание DsFileReader объект, см. matlab.io.datastore.DsFileReader.

Размер считываемых данных, заданный как целое число, представляющее количество считываемых байт.

Пример: read(fr,20)

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

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: 'OutputType','uint8'

Тип выходных данных, указанный как разделенная запятыми пара, состоящая из 'OutputType' и вектор символов или строковый скаляр, содержащий одно из следующих значений: 'uint8', 'int8', 'int16', 'int32', 'int64', 'uint16', 'uint32', 'uint64', 'single', 'double', или 'char'.

Пример: 'OutputType','uint8'

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

Интерпретировать входной размер, указанный как разделенная запятыми пара, состоящая из 'SizeMethod' и одно из этих значений:

  • 'NumBytes' - Интерпретировать size входной аргумент как число байтов для чтения из файла.

  • 'OutputSize' - Интерпретировать size входной аргумент как размер выходного сигнала A из метода чтения.

Пример: 'SizeMethod','OutputSize'

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

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

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

Выходные данные, возвращаемые в виде массива.

Число считанных байт, возвращаемых в виде числового скалярного целого числа.

  • Если 'SizeMethod' свойство не указано или установлено в значение 'NumBytes', то count - количество прочитанных байтов.

  • Если 'SizeMethod' свойство имеет значение 'OutputSize', то count равно size(A).

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

Примеры

Считывание части файла, определяемой начальной позицией и размером

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

Создать DsFileReader объект для airlinesmall.csv.

fr = matlab.io.datastore.DsFileReader('airlinesmall.csv');

airlinesmall.csv имеет имена переменных в начале файла. Строка имен переменных заканчивается в позиции, помеченной 299 байт. Чтобы пройти через строку имен переменных, используйте seek способ перемещения указателя считывания в исходное положение.

seek(fr,299,'RespectTextEncoding',true);

Проверьте, есть ли в файле данные для чтения с помощью hasdata способ. Метод чтения считывает 1000 байт из файла и интерпретирует их как символы.

if hasdata(fr)
   [d,count] = read(fr,1000,'OutputType','char');
end

Прочитайте достаточно байт из файла для заполнения 1000 путем установки SizeMethod параметр для OutputSize.

if hasdata(fr)
    [d,count] = read(fr,1000,'SizeMethod','OutputSize',...
                                       'OutputType','char');
end

Представлен в R2017b