函数
GLibiconv
声明 [源代码]
gsize
g_iconv (
GIConv converter,
gchar** inbuf,
gsize* inbytes_left,
gchar** outbuf,
gsize* outbytes_left
)
说明 [源代码]
与标准 UNIX 例程 iconv() 相同,但可能通过 libiconv 在缺少本机实现的 UNIX 版本中实现。
GLib 提供了 g_convert()
和 g_locale_to_utf8()
,这两个比原始 iconv 包装器可能更方便。
请注意,对于输入字符集中有效但输出字符集中没有任何表示的字符的 iconv()
行为是由实现定义的。在这种情况下,此函数可能会返回成功(其中使用替换字符的不可逆转换数为正),或可能会返回 -1 并设置诸如 EILSEQ
之类的错误。
此函数不能直接用于语言绑定。
参数
converter
-
类型:
GIConv
从 g_iconv_open() 获取的转换描述符。
inbuf
-
类型:
gchar**
要转换的字节。
数据归函数调用方所有。 该值是 NUL 终止的 UTF-8 字符串。 inbytes_left
-
类型:
gsize*
出入参数,
inbuf
中剩余要转换的字节数。该参数将被函数修改。 outbuf
-
类型:
gchar**
转换后的输出字节。
数据归函数调用方所有。 该值是 NUL 终止的 UTF-8 字符串。 outbytes_left
-
类型:
gsize*
出入参数,可在
outbuf
中填入的字节数。该参数将被函数修改。