老实说,我几年没用c ++了,所以请耐心等待。
我不是在找你为我编写这段代码,只是指出我可以找到解决方案的方向(或者至少可以使用类似的东西)
操作系统:Windows 使用:dirent.h 不使用:boost
-PseudoCode
我知道如何接受用户的输入但我不知道如何应用该输入(包含目录路径的字符串)以便能够导航并检查文件。 < / p>
这是一个工作项目,它突然被扔进我的膝盖。我很感激你的帮助。
答案 0 :(得分:5)
以下是使用dirent.h迭代目录的一些示例代码:
#include <iostream>
#include <algorithm>
#include <string>
#include <dirent.h>
using namespace std;
bool has_suffix(const string& s, const string& suffix)
{
return (s.size() >= suffix.size()) && equal(suffix.rbegin(), suffix.rend(), s.rbegin());
}
int main(int argc, char **argv)
{
cout << "Directory name: ";
string path;
getline(cin, path);
DIR *dir = opendir(path.c_str());
if(!dir)
{
return 1;
}
dirent *entry;
while((entry = readdir(dir))!=null)
{
if(has_suffix(entry->d_name, ".txt"))
{
cout << entry->d_name << endl;
}
}
closedir(dir);
}