
On Sun, 18 Nov 2018 at 05:31, Richard Závodný via Boost-users < boost-users@lists.boost.org> wrote:
---------- Forwarded message --------- From: Richard Závodný <zavodnyrichard@gmail.com> Date: Sat, Nov 17, 2018, 3:59 PM Subject: Boost::Filesystem - How to iterate, through the whole drive To: <boost-users@lists.boost.org>
Hey guys, I need iterate over all directories from starting path. If I start iterating from C:\some-dir it works very well, however if I try to iterate from C:\, it doesn't work. How can iterate through the whole drive? Thank you.
Code is here: https://pastebin.com/mpsKJxH2 <https://pastebin.com/3J6FEMG5>. The problem I experience is commented right in the code section (line 1, 13 and 25).
This works for me, either with boost-1.68 (not that I think that matters) or the STL-VC-15.9.1 (/std:c++17): #include <iostream> #include <boost/filesystem.hpp> namespace fs = boost::filesystem; int main ( ) { for ( auto & p : fs::recursive_directory_iterator ( "d:\\" ) ) { std::cout << p.path ( ) << '\n'; } } Note that: "The iteration order is unspecified, except that each directory entry is visited only once." degski -- *“If something cannot go on forever, it will stop" - Herbert Stein*