Считывание данных из набора данных HDF5
data = H5D.read(dataset_id)
data = H5D.read(dataset_id,mem_type_id,mem_space_id,file_space_id,dxpl)
data = H5D.read(dataset_id) считывает весь набор данных, указанный dataset_id.
data = H5D.read(dataset_id,mem_type_id,mem_space_id,file_space_id,dxpl) считывает набор данных, указанный dataset_id. mem_type_id ввод указывает тип данных памяти и обычно должен быть 'H5ML_DEFAULT' позволяет MATLAB ® определить соответствующее значение .mem_space_id описывает, как данные должны быть размещены в памяти и обычно должны быть 'H5S_ALL'. file_space_id содержит описание выбора данных из файла. Он также может быть указан как 'H5S_ALL', но это приводит к тому, что весь набор данных считывается в память. dxpl является идентификатором списка свойств передачи набора данных и обычно должен быть 'H5P_DEFAULT'.
Примечание
Библиотека HDF5 использует упорядочение в стиле C для многомерных массивов, а MATLAB - в стиле FORTRAN. Пожалуйста, консультируйтесь «Используя Функции HDF5 Низкого уровня MATLAB» в документации MATLAB для получения дополнительной информации.
Прочитайте весь набор данных.
fid = H5F.open('example.h5'); dset_id = H5D.open(fid,'/g1/g1.1/dset1.1.1'); data = H5D.read(dset_id); H5D.close(dset_id); H5F.close(fid);
Прочитайте гиперслот 2x3, начиная с 4-й строки и 5-го столбца набора данных примера.
plist = 'H5P_DEFAULT'; fid = H5F.open('example.h5'); dset_id = H5D.open(fid,'/g1/g1.1/dset1.1.1'); dims = fliplr([2 3]); mem_space_id = H5S.create_simple(2,dims,[]); file_space_id = H5D.get_space(dset_id); offset = fliplr([3 4]); block = fliplr([2 3]); H5S.select_hyperslab(file_space_id,'H5S_SELECT_SET',offset,[],[],block); data = H5D.read(dset_id,'H5ML_DEFAULT',mem_space_id,file_space_id,plist); H5D.close(dset_id); H5F.close(fid);