函数

GLibutf8_validate

声明 [src]

gboolean
g_utf8_validate (
  const gchar* str,
  gssize max_len,
  const gchar** end
)

说明 [src]

验证 UTF-8 编码的文本。

str 是要验证的文本;如果 str 以空结尾,则 max_len 可以为 -1,否则 max_len 应该是要验证的字节数。

如果 end 为非 NULL,则有效范围的结尾将存储在那里。如果某些字节无效,则这是第一个无效字符的第一个字节,否则,这是要验证的文本的结尾 — 即尾随空字节或超过 max_len 的第一个字节(如果它为正)。

请注意,如果 max_len 为正且任何 max_len 字节为空,则 g_utf8_validate() 返回 FALSE

如果 str 全部有效,则返回 TRUE。许多 GLib 和 GTK 例程都要求有效 UTF-8 作为输入;因此,从文件或网络读取的数据应使用 g_utf8_validate() 检查,然后再进行任何其他操作。

参数

str

类型: guint8 数组

指向字符数据的指针。

该数组的长度在 max_len 参数中指定。
该数据归函数调用者所有。
max_len

类型: gssize

要验证的最大字节数或 -1 表示直到遇到空为止。

end

类型: const gchar**

有效数据的结尾的返回位置。

该参数将由该函数设置。
该参数可以是 NULL
返回的数据归函数所有。
该值为 NULL 终止的 UTF-8 字符串。

返回值

类型: gboolean

如果文本为 UTF-8,则为 TRUE