基于C++实现读取指定路径文件
电脑配置:window10, 64位操作系统,基于x64的处理器,Microsoft Visual Studio Community 2019 Version 16.4.5
实现方法:使用 boost-filessystem 包。
使用 vcpkg 安装方法: .\vcpkg.exe install boost-filesystem:x64-windows
代码:
#include <iostream> #include <boost/filesystem.hpp> using namespace std; using namespace boost::filesystem; int main() { //指定图片读取文件夹,然后得到文件夹下的所有图片 string pathImageFile = "e:/picture"; path pathFile(pathImageFile); vector<string> imageFiles; for (auto f = directory_iterator(pathFile); f != directory_iterator(); f++) { if (!is_directory(f->path())) // We eliminate directories { imageFiles.push_back(f->path().filename().string()); cout << f->path().filename().string() << endl; } else continue; } }
运行结果:
查阅了一些这方便的中文资料,发现很少谈到要引用包的,所以这里写了下使用第三方包的方法供大家参考。另外,因为本人从 python 转过来,习惯了各式各样的包,使用第三方包往往可以节省我们写代码的时间,所以本人比较喜欢使用第三方软件。查阅了英文的资料,发现可以实现得到指定文件名下文件列表的包除了 boost-filesystem 以外还比较常用有 dirent 这个包,具体的大家可以参考以下链接,以上的代码也是其中的答案之一。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
Java C++ 题解leetcode1619删除某些元素后数组均值
这篇文章主要为大家介绍了Java C++ 题解leetcode1619删除某些元素后数组均值示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2022-09-09关于C/C++中的side effect(负效应)和sequence point(序列点)
不知你在写code时是否遇到这样的问题?int i = 3; int x = (++i) + (++i) + (++i); 问x值为多少?进行各种理论分析,并在编译器上实践,然而可能发现最终的结果是不正确的,也是不稳定的,不同的编译器可能会产生不同的结果。这让人很头疼2013-10-10
最新评论