我正在使用boost :: filesystem :: remove_all操作来删除目录的内容。
它正确删除了内容,但是,作为Boost Filesystem Documentation的状态,它也会删除目录本身。
是否有一种简单的方法可以保留目录,尽管它是空的?
答案 0 :(得分:19)
我认为最好的方法是在文件夹内迭代并为每个元素执行remove_all。示例代码:
namespace fs=boost::filesystem;
fs::path path_to_remove("C:\\DirectoryToRemove");
for (fs::directory_iterator end_dir_it, it(path_to_remove); it!=end_dir_it; ++it) {
fs::remove_all(it->path());
}