Domanda

I'm using boost::filesystem::remove_all operation to remove the content of a directory.

It removes correctly the content, but, as state by Boost Filesystem Documentation, it also removes the directory itself.

Is there an easy way to stay with the directory despite that it's empty?

È stato utile?

Soluzione

I think the best way is to iterate inside the folder and perform remove_all for each element. Example code:

  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());
  }
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top