方法

GioFilereplace_readwrite

自 2.22 版本以来

声明 [src]

GFileIOStream*
g_file_replace_readwrite (
  GFile* file,
  const char* etag,
  gboolean make_backup,
  GFileCreateFlags flags,
  GCancellable* cancellable,
  GError** error
)

描述 [src]

返回一个用于在读写模式下覆盖文件的输出流,可能首先创建文件的备份副本。如果文件不存在,它将被创建。

关于行为的详细信息,请参阅 g_file_replace(),它执行相同操作,但只返回一个输出流。

注意,在许多非本地文件的情况下,读写流不受支持,因此请确保您真正需要做读写流操作,而不是仅仅用于读取或写入打开。

自 2.22 版本以来可用

参数

etag

类型: const char*

当前 GFile 的可选 实体标记,或 NULL 以忽略。

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

类型: gboolean

如果创建备份,则为 TRUE

flags

类型: GFileCreateFlags

一组 GFileCreateFlags

cancellable

类型: GCancellable

可选的 GCancellable 对象,NULL 以忽略。

参数可以 NULL
数据由方法调用者拥有。
error

类型: GError **

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

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

返回值

类型: GFileIOStream

一个 GFileIOStream 或错误时为 NULL。使用 g_object_unref() 释放返回的对象。

方法调用者承担返回数据的所有权,并负责释放它。