虚拟方法

GioFilecreate

声明 [src]

GFileOutputStream*
create (
  GFile* file,
  GFileCreateFlags flags,
  GCancellable* cancellable,
  GError** error
)

描述 [src]

创建一个新的文件并返回用于写入的输出流。文件必须之前不存在。

默认情况下创建的文件通常可以被每个人读取,但如果在 flags 中传入 G_FILE_CREATE_PRIVATE,则文件只会对当前用户可读,达到目标文件系统支持的级别。

如果 cancellable 不是 NULL,则可以在另一个线程中触发可取消对象来取消操作。如果操作被取消,将返回错误 G_IO_ERROR_CANCELLED

如果已存在同名的文件或目录,将返回错误 G_IO_ERROR_EXISTS。一些文件系统不允许所有文件名,可能返回 G_IO_ERROR_INVALID_FILENAME 错误,如果名称过长,将返回 G_IO_ERROR_FILENAME_TOO_LONG。还可能存在其他错误,具体取决于文件所在的文件系统类型。

参数

flags

类型: GFileCreateFlags

一组 GFileCreateFlags

cancellable

类型: GCancellable

可选的 GCancellable 对象,NULL 表示忽略。

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

类型: GError **

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

该参数可以为 NULL
如果返回位置不是 NULL,则必须将其初始化为 NULL GError*
如果没有错误,则虚拟函数将通过将参数设置为 NULL 初始化该参数。
如果出现错误,则参数将设置为一个新分配的 GError;调用者将获取数据的所有权,并负责释放它。

返回值

类型: GFileOutputStream

为新建文件提供 GFileOutputStream,或者在错误情况下返回 NULL。使用 g_object_unref() 释放返回的对象。

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