函数

GLibutf8_to_utf16

声明 [src]

gunichar2*
g_utf8_to_utf16 (
  const gchar* str,
  glong len,
  glong* items_read,
  glong* items_written,
  GError** error
)

说明 [src]

UTF-8 字符串转换为 UTF-16 字符串。

在转换后的文本后将添加空字符 (U+0000)。

参数

str

类型: const gchar*

UTF-8 编码的字符串。

该数据由函数调用者拥有。
该值是带有空终止符的 UTF-8 字符串。
len

类型: glong

要使用的 str 的最大长度(字节数)。如果 len 为负数,则该字符串以空终止。

items_read

类型: glong*

用于存储读取的字节数的位置,或 NULL。如果为 NULL,则如果 str 包含尾部部分字符,则会返回 G_CONVERT_ERROR_PARTIAL_INPUT。如果发生错误,则此处存储无效输入的索引。

该参数将由该函数设置。
此参数可以为 NULL
items_written

类型: glong*

用于存储写入的 gunichar2 个数的位置,或 NULL。此处存储的值不包括尾部空值。

该参数将由该函数设置。
此参数可以为 NULL
error

类型: GError **

用于存储 可恢复错误 的返回位置。

此参数可以为 NULL
如果返回位置不为 NULL,则必须将其初始化为 NULL GError*
如果没有错误,该函数将把该参数初始化并保留为 NULL
如果发生错误,该参数将设置为一个新分配的 GError;调用者将拥有数据并负责释放它。

返回值

类型: gunichar2*

指向新分配的 UTF-16 字符串的指针。该值必须通过 g_free() 释放。

该函数调用者将拥有数据并负责释放它。