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: h5pset_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.