筆者使用boost::filesystem進行了一些常見操作,希望對其進行梳理,方便自己和其他人;轉載請註明:鵬心雕瓏 http://blog.csdn.net/qq_25040013
- 參考文獻: http://blog.csdn.net/tujiaw
- 源碼:
#include <boost/filesystem.hpp>
namespace fs = boost::filesystem;
int get_filenames(const std::string& dir, std::vector<std::string>& filenames)
{
fs::path path(dir);
if (!fs::exists(path))
{
return -1;
}
fs::directory_iterator end_iter;
for (fs::directory_iterator iter(path); iter != end_iter; ++iter)
{
if (fs::is_regular_file(iter->status()))
{
filenames.push_back(iter->path().string());
}
if (fs::is_directory(iter->status()))
{
get_filenames(iter->path().string(), filenames);
}
}
return filenames.size();
}