gpt4 book ai didi

c++ - 如何从目录迭代器中选择特定文件并进行比较

转载 作者:行者123 更新时间:2023-12-02 10:31:10 25 4
gpt4 key购买 nike

我有两个目录迭代器,它们从用户获取两个路径输入,并打印其条目名称和大小。

我想要的是让用户输入多个索引,然后程序将从两个目录中获取该索引的文件,并比较它们的大小以查看它们是否匹配。

代码是这样的:

for (auto& p : recursive_directory_iterator(str1)) {
++i;
cout << "index no. " << i << p.path().filename() << file_size(p.path()) << endl;
}

for (auto& p : recursive_directory_iterator(str2)) {
++j;
cout << "index no. " << j << p.path().filename() <<file_size(p.path()) << endl;
}

我希望我想要的清楚。如果有人可以帮助我,我将非常感激。

最佳答案

如果我正确理解了您的问题,那么您正在寻找类似的东西

std::vector<std::filesystem::directory_entry> v1, v2;
size_t i;
for (auto& p : std::recursive_directory_iterator(str1))
v1.push_back(p);
for (auto& p : std::recursive_directory_iterator(str2))
v2.push_back(p);

std::cin >> i; // get user input

if (std::file_size(v1[i].path()] > std::file_size(v2[i].path()])
{
// ... do something ...
}

您需要为用户添加提示,并检查他们输入的数字是 i < v1.size()i < v2.size()

关于c++ - 如何从目录迭代器中选择特定文件并进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62195231/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com