Main Content

H5I.get_name

Name of object

Syntax

name = H5I.get_name(obj_id)
name = H5I.get_name(obj_id,'TextEncoding',encoding)

Description

name = H5I.get_name(obj_id) returns the name of the group, dataset, or datatype specified by obj_id. If no name is attached to the object, an empty character vector is returned.

name = H5I.get_name(obj_id,'TextEncoding',encoding) additionally specifies the text encoding to use to interpret the object name. Specify encoding as 'system'(default) or 'UTF-8'.

  • 'system' — Use the system default encoding to interpret the object name.

  • 'UTF-8' — Use UTF-8 encoding to interpret the object name.

Examples

Display the names of all the objects in the /g3 group in the example file by alphabetical order.

idx_type = 'H5_INDEX_NAME';
order = 'H5_ITER_INC';
fid = H5F.open('example.h5');
gid = H5G.open(fid,'/g3');
info = H5G.get_info(gid);
for j = 1:info.nlinks
    obj_id = H5O.open_by_idx(fid,'g3',idx_type,order,j-1,'H5P_DEFAULT');
    name = H5I.get_name(obj_id);
    fprintf('Object %d: ''%s''.\n',j-1,name);
    H5O.close(obj_id);
end
H5G.close(gid);
H5F.close(fid);

Compatibility Considerations

  • Starting in R2020a, the H5I.get_name function only accepts committed (previously called named) HDF5 datatypes as input arguments, and will error if you pass other datatypes as input. In releases R2019b and earlier, H5I.get_name does not error if you pass other datatypes as input.

    To verify that the input is a committed HDF5 datatype, call the H5T.committed function on it. The H5T.committed function returns a value of 1 if the input is a committed HDF5 datatype, and a value of 0 if it is not.