方法

GioResourcelookup_data

自:2.32

声明 [源代码]

GBytes*
g_resource_lookup_data (
  GResource* resource,
  const char* path,
  GResourceLookupFlags lookup_flags,
  GError** error
)

描述 [源代码]

在资源中查找指定路径的文件,并返回一个GBytes,允许直接访问内存中的数据。

该数据总是由一个空字节符跟随,因此可以安全地将其用作C字符串。然而,该字节不包括在GBytes的大小中。

对于未压缩的资源文件,这是一个直接指向资源包的指针,通常位于程序二进制中的某个只读数据部分。对于压缩文件,堆上分配内存,并自动解压缩数据。

lookup_flags 控制查找的行为。

如果没有在资源中找到 path,则可以返回错误 G_RESOURCE_ERROR_NOT_FOUND,或者在压缩压缩资源时失败返回 G_RESOURCE_ERROR_INTERNAL

自:2.32

参数

path

类型: const char*

资源内的路径名称。

数据由方法调用者拥有。
值是一个空终止的UTF-8字符串。
lookup_flags

类型: GResourceLookupFlags

一个GResourceLookupFlags

error

类型: GError **

一个可恢复错误的返回位置。

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

返回值

类型: GBytes

GBytes 或在错误时为 NULL

调用者负责获取返回的数据,并负责释放它。