#include <boost/filesystem.hpp>
#include <boost/filesystem/operations.hpp>
#include <boost/filesystem/path.hpp>
namespace fs = boost::filesystem;
template< class Fun>
void traverse( const std:: string &path, Fun fun)
{
fs::path dir(path);
if (fs::exists(dir))
{
fs::directory_iterator item_begin(dir);
fs::directory_iterator item_end;
for ( ;item_begin != item_end; item_begin ++ )
{
std:: string str = (*item_begin).path(). string();
if (fs::is_directory( *item_begin))
{
fun(str);
traverse( str, fun );
}
else
{
fun(str);
}
}
}
}
using namespace MSE::CBIR;
int main()
{
traverse( " F:\\img\\ ", []( const std:: string& str)
{
std::cout << str << std::endl;
});
}
#include <boost/filesystem/operations.hpp>
#include <boost/filesystem/path.hpp>
namespace fs = boost::filesystem;
template< class Fun>
void traverse( const std:: string &path, Fun fun)
{
fs::path dir(path);
if (fs::exists(dir))
{
fs::directory_iterator item_begin(dir);
fs::directory_iterator item_end;
for ( ;item_begin != item_end; item_begin ++ )
{
std:: string str = (*item_begin).path(). string();
if (fs::is_directory( *item_begin))
{
fun(str);
traverse( str, fun );
}
else
{
fun(str);
}
}
}
}
using namespace MSE::CBIR;
int main()
{
traverse( " F:\\img\\ ", []( const std:: string& str)
{
std::cout << str << std::endl;
});
}