函数
GLibfile_get_contents
声明 [源代码]
gboolean
g_file_get_contents (
const gchar* filename,
gchar** contents,
gsize* length,
GError** error
)
描述 [源代码]
将整个文件读入到已分配的内存中,并进行了良好的错误检查。
如果调用成功,它将返回 TRUE,并将 contents 设置为文件内容,将 length 设置为文件内容的长度(以字节为单位)。存储在 contents 中的字符串将以 null 结尾,因此对于文本文件,你可以为 length 参数传递 NULL。如果调用不成功,它将返回 FALSE 并设置 error。错误域是 G_FILE_ERROR。可能的错误代码是 GFileError 枚举中的代码。在错误情况下,contents 设置为 NULL,且 length 设置为 0。
参数
filename-
类型:
const gchar*要从中读取内容的文件的名称,采用 GLib 文件名编码。
数据由函数的调用者所有。 该值是平台本机字符串,在 Unix 上使用首选操作系统编码,在 Windows 上使用 UTF-8。 contents-
类型:
guint8数组用于存储已分配字符串的位置,可以使用
g_free()来释放返回的字符串。该参数将由函数设置。 数组的长度在 length参数中指定。函数的调用者取得返回数据的拥有权,并负责释放它。 length-
类型:
gsize*用于存储内容长度(以字节为单位)的位置,或
NULL。该参数将由函数设置。 该参数可由函数设置为 NULL。 error-
类型:
GError **可恢复错误的返回位置 。
该参数可以是 NULL。如果返回位置不是 NULL,则必须将其初始化为NULLGError*。如果没有错误,该参数将由函数初始化并保留为 NULL。如果发生错误,该参数将设置为新分配的 GError;调用者将取得数据的拥有权并负责释放它。