方法
GioFiledelete
声明 [src]
gboolean
g_file_delete (
GFile* file,
GCancellable* cancellable,
GError** error
)
描述 [src]
删除文件。如果 file
是目录,只有它在空的情况下才会被删除。这具有与 g_unlink() 相同的语义。
如果 file
不存在,将返回 G_IO_ERROR_NOT_FOUND
。这允许在避免 检查到使用时间竞争 的情况下实现删除操作。
g_autoptr(GError) local_error = NULL;
if (!g_file_delete (my_file, my_cancellable, &local_error) &&
!g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND))
{
// deletion failed for some reason other than the file not existing:
// so report the error
g_warning ("Failed to delete %s: %s",
g_file_peek_path (my_file), local_error->message);
}
如果 cancellable
不是 NULL
,则可以在另一个线程中通过触发可取消对象取消操作。如果操作被取消,将返回错误 G_IO_ERROR_CANCELLED
。
参数
cancellable
-
类型:
GCancellable
可选的
GCancellable
对象,NULL
表示忽略。该参数可以为 NULL
。数据由方法调用的所有者拥有。 error
-
类型:
GError **
恢复性错误的返回位置。
该参数可以为 NULL
。如果返回位置不是 NULL
,则必须将其初始化为NULL
的GError*
。如果没有错误,方法将保留初始化到 NULL
。发生错误时,该参数将设置为新分配的 GError
;调用者将接管数据,并负责释放它。