iconv_open(3) — Linux manual page

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | ATTRIBUTES | STANDARDS | HISTORY | SEE ALSO | COLOPHON

iconv_open(3)           Library Functions Manual           iconv_open(3)

NAME         top

       iconv_open - allocate descriptor for character set conversion

LIBRARY         top

       Standard C library (libc, -lc)

SYNOPSIS         top

       #include <iconv.h>

       iconv_t iconv_open(const char *tocode, const char *fromcode);

DESCRIPTION         top

       The iconv_open() function allocates a conversion descriptor
       suitable for converting byte sequences from character encoding
       fromcode to character encoding tocode.

       The values permitted for fromcode and tocode and the supported
       combinations are system-dependent.  For the GNU C library, the
       permitted values are listed by the iconv --list command, and all
       combinations of the listed values are supported.  Furthermore the
       GNU C library and the GNU libiconv library support the following
       two suffixes:

       //TRANSLIT
              When the string "//TRANSLIT" is appended to tocode,
              transliteration is activated.  This means that when a
              character cannot be represented in the target character
              set, it can be approximated through one or several
              similarly looking characters.

       //IGNORE
              When the string "//IGNORE" is appended to tocode,
              characters that cannot be represented in the target
              character set will be silently discarded.

       The resulting conversion descriptor can be used with iconv(3) any
       number of times.  It remains valid until deallocated using
       iconv_close(3).

       A conversion descriptor contains a conversion state.  After
       creation using iconv_open(), the state is in the initial state.
       Using iconv(3) modifies the descriptor's conversion state.  To
       bring the state back to the initial state, use iconv(3) with NULL
       as inbuf argument.

RETURN VALUE         top

       On success, iconv_open() returns a freshly allocated conversion
       descriptor.  On failure, it returns (iconv_t) -1 and sets errno
       to indicate the error.

ERRORS         top

       The following error can occur, among others:

       EINVAL The conversion from fromcode to tocode is not supported by
              the implementation.

ATTRIBUTES         top

       For an explanation of the terms used in this section, see
       attributes(7).
       ┌──────────────────────────────┬───────────────┬────────────────┐
       │ Interface                    Attribute     Value          │
       ├──────────────────────────────┼───────────────┼────────────────┤
       │ iconv_open()                 │ Thread safety │ MT-Safe locale │
       └──────────────────────────────┴───────────────┴────────────────┘

STANDARDS         top

       POSIX.1-2008.

HISTORY         top

       glibc 2.1.  POSIX.1-2001, SUSv2.

SEE ALSO         top

       iconv(1), iconv(3), iconv_close(3)

COLOPHON         top

       This page is part of the man-pages (Linux kernel and C library
       user-space interface documentation) project.  Information about
       the project can be found at 
       ⟨https://www.kernel.org/doc/man-pages/⟩.  If you have a bug report
       for this manual page, see
       ⟨https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/tree/CONTRIBUTING⟩.
       This page was obtained from the tarball man-pages-6.9.1.tar.gz
       fetched from
       ⟨https://mirrors.edge.kernel.org/pub/linux/docs/man-pages/⟩ on
       2024-06-26.  If you discover any rendering problems in this HTML
       version of the page, or you believe there is a better or more up-
       to-date source for the page, or you have corrections or
       improvements to the information in this COLOPHON (which is not
       part of the original manual page), send a mail to
       man-pages@man7.org

Linux man-pages 6.9.1          2024-05-02                  iconv_open(3)

Pages that refer to this page: iconv(1)bind_textdomain_codeset(3)iconv(3)iconv_close(3)