Last modified: 24 September 2014
Name: H5Pset_char_encoding
Signature:
herr_t H5Pset_char_encoding( hid_t plist_id, H5T_cset_t encoding )

Purpose:
Sets the character encoding used to encode link and attribute names.

Description:
H5Pset_char_encoding sets the character encoding used for the names of links (which provide the names by which objects are referenced) or attributes created with the property list plist_id.

Valid values for encoding include the following:
     H5T_CSET_ASCII US ASCII
     H5T_CSET_UTF8     UTF-8 Unicode

For example, if the character set for the property list plist_id is set to H5T_CSET_UTF8, link names pointing to objects created with the link creation property list plist_id will be encoded using the UTF-8 character set. Similarly, names of attributes created with the attribute creation property list plist_id will be encoded as UTF-8.

ASCII and UTF-8 Unicode are the only currently supported character encodings. Extended ASCII encodings (for example, ISO 8859) are not supported. This encoding policy is not enforced by the HDF5 Library. Using encodings other than ASCII and UTF-8 can lead to compatibility and usability problems.

Note that H5Pset_char_encoding sets the character set used for an HDF5 link or attribute name while H5Tset_cset sets the character set used in a character or string datatype.

Parameters:
hid_t plist_id IN: Link creation or attribute creation property list identifier
H5T_cset_t encoding     IN: String encoding character set

Returns:
Returns a non-negative valule if successful; otherwise returns a negative value.

Fortran90 Interface: h5set_char_encoding_f
SUBROUTINE h5pset_char_encoding_f(plist_id, encoding, hdferr)
  IMPLICIT NONE
  INTEGER(HID_T), INTENT(IN) :: plist_id
                                  ! Property list identifier
  INTEGER, INTENT(IN) :: encoding ! String encoding character set:
                                  !   H5T_CSET_ASCII_F -> US ASCII
                                  !   H5T_CSET_UTF8_F -> UTF-8 Unicode encoding
  INTEGER, INTENT(OUT) :: hdferr  ! Error code
                                  ! 0 on success and -1 on failure
END SUBROUTINE h5pset_char_encoding_f
    
See Also:
“Using UTF-8 Encoding in HDF5 Applications”

History:
Release     C
1.8.0 Function introduced in this release.