使用c++,如何获取一个文件夹下的全部图片名称和路径?
时间: 2023-12-10 09:38:47 浏览: 92
在C++中,可以使用标准库中的`<filesystem>`来遍历文件夹中的文件,并使用正则表达式来判断文件是否为图片文件。以下是一个示例代码:
```c++
#include <iostream>
#include <filesystem>
#include <regex>
int main()
{
std::string path = "path_to_folder";
std::regex img_regex(".*\.(jpg|jpeg|png|bmp|gif)$"); // 匹配图片文件的正则表达式
for (const auto& entry : std::filesystem::directory_iterator(path))
{
if (std::filesystem::is_regular_file(entry.path()) && std::regex_match(entry.path().string(), img_regex))
{
std::cout << "Image name: " << entry.path().filename().string() << std::endl;
std::cout << "Image path: " << entry.path().string() << std::endl;
}
}
return 0;
}
```
需要注意的是,`<filesystem>`是C++17标准库中的一部分,如果你的编译器不支持C++17,则需要使用其他的文件操作库,比如Boost.Filesystem。
阅读全文