18

我正在使用 boost::filesystem::remove_all 操作来删除目录的内容。

它正确地删除了内容,但是,正如 Boost Filesystem Documentation 所述,它也删除了目录本身。

尽管目录是空的,但是否有一种简单的方法可以保留目录?

4

1 回答 1

25

我认为最好的方法是在文件夹内迭代并为每个元素执行 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());
  }
于 2013-01-30T22:53:15.300 回答