【发布时间】:2010-07-19 20:01:10
【问题描述】:
在 C++ 中,如何删除包含所有文件的目录?我知道有rmdir,但它只会删除非空目录,那么如何首先列出并删除所有包含的文件?
我知道使用 Boost Filesystem 应该不难,但我有点想避免构建并依赖它来完成这一项小任务......
【问题讨论】:
-
这是用于什么平台的?
rmdir向我推荐 Unix 或 Linux。 -
@David:是的,我忘了说我在 Linux 上。 (但 rmdir 是独立于平台的?)但看起来也许使用 Boost 会更好......
-
如果你真的想用 C++ 进行文件操作,请使用 boost。如果 shell 命令足够,请使用
rm -rf [dirname]。 -
@dehmann:不完全是“platform-indendent”,而是“常用”(即 Unix/Linux 和 DOS,也许还有其他——Mac OSX 有命令行界面吗?)
-
@James:是的——默认值曾经是 tcsh,但几年前它改为 Bash。大多数其他常见的嫌疑人也可以找到。