IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    [原][boost][filesystem] 扫描给定目录下所有项

    bendanban发表于 2015-03-14 19:13:06
    love 0

    Intro.

    Boost的filesystem可以用来扫描给定目录下的所有项。


    实现

    具体实现代码如下:

    需要包含的头文件和使用的命名空间:

    #include filesystem.hpp><span>
    using namespace boost::filesystem;

    扫描目录下文件的代码:

    for (directory_iterator dit(your_path); dit != directory_iterator(); dit++){
      if (is_regular_file(*dit)){
        cout << dit->path().filename() << endl;
      }
    }

    有时候可能需要判断你的路径是否是目录:

    bool is_directory(const boost::filesystem::path &p;);

    是不是一般的文件:

    bool is_regular_file(const boost::filesystem::path &p;);

    主要使用directory_iterator 来完成目录下文件的扫描,注意它的结束时与directory_iterator()默认构造函数来做比较的!



沪ICP备19023445号-2号
友情链接