函数

GLibremove

自 2.6 起

声明 [src]

int
g_remove (
  const gchar* filename
)

描述 [src]

用于 POSIX remove() 函数的包装。remove() 函数从文件系统中删除一个名称。

有关 remove() 在您的系统上如何工作,请参见您的 C 库手册以获取更多详细信息。在 Unix 上,remove() 也会删除目录,因为它对文件调用 unlink(),对目录调用 rmdir()。在 Windows 上,尽管 C 库中 remove() 仅可用于文件,但此函数会先尝试 remove(),如果失败,再尝试 rmdir(),因此可用于文件和目录。但是,请注意,在 Windows 上,通常无法删除已对某个进程打开或已映射到内存中的文件。

如果此函数在 Windows 上失败,您将无法从 errno 值中推断出太多信息。无论导致 remove() 失败的原因是什么,都会尝试 rmdir()rmdir() 设置的任何 errno 值都将被 remove() 设置的值覆盖。

自 2.6 起可用

参数

文件名

类型: const gchar*

GLib 文件名称编码中的路径名(在 Windows 上为 UTF-8)。

数据由函数的调用者所有。
该值是平台原生字符串,在 Unix上使用首选操作系统编码,在 Windows上使用 UTF-8。

返回值

类型: int

如果文件已成功删除,则返回 0;如果发生错误,则返回 -1。