使用MATLAB从H5文件中读取字符串

时间:2012-02-13 03:39:44

标签: matlab hdf5

我需要使用matlab从H5数据中读取质量标志(好的,坏的,谨慎的)等字符串字符,类似于在idl中读取的数据,但是它不起作用。我正在使用matlab2009a版本。请让我知道我是否可以将h5文件的字符串读作'字节数组',并为字符标记放置数字,如0,1,2(好,小心,坏)。 我能够读取除charcter字符串之外的其他参数,如lat,lon,data(所有数字)。感谢您的帮助。

对于E.g'

FILE_NAME='acos_L2s_091101_17_Production_v050050_L 2s2800_r01_PolB_110305035627.h5'

file_id = H5F.open (FILE_NAME, 'H5F_ACC_RDONLY', 'H5P_DEFAULT');

Flag_NAME = 'RetrievalResults/master_quality_flag';

Flag_id = H5D.open (file_id, Flag_NAME);

flag=H5D.read (data_id,'H5T_NATIVE_DOUBLE', 'H5S_ALL', 'H5S_ALL', 'H5P_DEFAULT'); 
% (Doesn't work)

`enter code here`OR
flag=H5D.read (data_id,'H5T_C_S1', 'H5S_ALL', 'H5S_ALL', 'H5P_DEFAULT');
% (not working)

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

目前还不清楚你究竟想做什么,但使用更高级别的HDF5功能可能会更容易,例如hdf5read

flag = hdf5read(FILE_NAME, Flag_NAME);