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);
}
If cancellable is not null, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error gio.types.IOErrorEnum.Cancelled will be returned.
Deletes a file. If the file is a directory, it will only be deleted if it is empty. This has the same semantics as glib.global.unlink.
If file doesn’t exist, gio.types.IOErrorEnum.NotFound will be returned. This allows for deletion to be implemented avoiding time-of-check to time-of-use races:
If cancellable is not null, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.types.IOErrorEnum.Cancelled will be returned.