函数
GLiblocale_from_utf8
声明 [src]
gchar*
g_locale_from_utf8 (
const gchar* utf8string,
gssize len,
gsize* bytes_read,
gsize* bytes_written,
GError** error
)
说明 [src]
将 [当前语言环境][setlocale] 中的 C 运行时使用的编码中将字符串从 UTF-8 转换为字符串编码。在 Windows 中,这表示系统代码页。
即使 len
参数为正,输入字符串也不应包含空字符。如果字符串中发现空字符,则将导致错误 G_CONVERT_ERROR_ILLEGAL_SEQUENCE
。使用 g_convert()
转换可能包含嵌入空字符的输入。
参数
utf8string
-
类型:
const gchar*
编码为 UTF-8 的字符串。
数据由函数调用者所有。 该值是带有空终止符的 UTF-8 字符串。 len
-
类型:
gssize
字符串的长度,或者如果字符串带有空终止符,则为 -1。
bytes_read
-
类型:
gsize*
存储已成功转换的输入字符串中字节数的位置,或
NULL
。即使转换成功,如果输入末尾有部分字符,那么这部分字节数也可能少于len
。如果错误G_CONVERT_ERROR_ILLEGAL_SEQUENCE
出现,则存储的值将是最后有效输入序列之后的字节偏移量。该参数将由函数设置。 该参数可以是 NULL
。 bytes_written
-
类型:
gsize*
存储在输出缓冲区(不包括终止空)中的字节数。
该参数将由函数设置。 该参数可以是 NULL
。 error
-
类型:
GError **
可恢复错误 返回位置。
该参数可以是 NULL
。如果返回位置不为 NULL
,则必须将其初始化为NULL
的GError*
。如果没有错误,该参数将被函数初始化并留在 NULL
中。如果出现错误,该参数将被设置为一个新分配的 GError
;调用者将拥有对数据的权限,并负责释放它。