Function

GLibiconv

Declaration [src]

gsize
g_iconv (
  GIConv converter,
  gchar** inbuf,
  gsize* inbytes_left,
  gchar** outbuf,
  gsize* outbytes_left
)

Description [src]

Same as the standard UNIX routine iconv(), but may be implemented via libiconv on UNIX flavors that lack a native implementation.

GLib provides g_convert() and g_locale_to_utf8() which are likely more convenient than the raw iconv wrappers.

Note that the behaviour of iconv() for characters which are valid in the input character set, but which have no representation in the output character set, is implementation defined. This function may return success (with a positive number of non-reversible conversions as replacement characters were used), or it may return -1 and set an error such as EILSEQ, in such a situation.

This function is not directly available to language bindings.

Parameters

converter

Type: GIConv

Conversion descriptor from g_iconv_open().

inbuf

Type: gchar**

Bytes to convert.

The data is owned by the caller of the function.
The value is a NUL terminated UTF-8 string.
inbytes_left

Type: gsize*

Inout parameter, bytes remaining to convert in inbuf.

The argument will be modified by the function.
outbuf

Type: gchar**

Converted output bytes.

The data is owned by the caller of the function.
The value is a NUL terminated UTF-8 string.
outbytes_left

Type: gsize*

Inout parameter, bytes available to fill in outbuf.

The argument will be modified by the function.

Return value

Type: gsize

Count of non-reversible conversions, or -1 on error.