matlab创建HDF5文件

一、例子

1、创建写入

 testdata = uint8(magic(5));
 h5create('my_example.h5','/dataset1',size(testdata)); %创建
 h5write('my_example.h5','/dataset1',testdata) %写入

 2、查看

h5disp('test.h5')

  3、读取

 testdata = h5read('test.h5','/data');
 testlabel = h5read('test.h5','/label');

二、matlab帮助查看

 1、h5create(FILENAME,DATASETNAME,SIZE,Param1,Value1, …) 

        (1)

       创建一个HDF5数据集,该数据集的名称为数据集名称”,其区段由文件名在文件中指定。如果DATASETNAME是完整路径名,则创建所有中间组(如果它们还不存在)。如果文件名不存在,就创建它。大小元素应该是Inf,以便指定无限的范围。

      参数Value

        (2)例子

  Example:  create a fixed-size 100x200 dataset.
        
       h5create('myfile.h5','/myDataset1',[100 200]);
        h5disp('myfile.h5');
 

  

 Example:  create a single precision 1000x2000 dataset with a chunk size
    of 50x80.  Apply the highest level of compression possible.

        h5create('myfile.h5','/myDataset2',[1000 2000], 'Datatype','single', ...
                 'ChunkSize',[50 80],'Deflate',9);
        h5disp('myfile.h5');

  

 Example:  create a two-dimensional dataset that is unlimited along the
    second extent.

        h5create('myfile.h5','/myDataset3',[200 Inf],'ChunkSize',[20 20]);
        h5disp('myfile.h5');

2、h5read, h5write, h5info, h5disp.命令直接help查看就可以了

三、不能用的Bug

我电脑上有两个matlab,64位的R2016a版本的不能用,后来用的32 位R2012a可以成功使用

 

Tags: