gpt4 book ai didi

c++ - 无法通过从 C++ 中的另一个文件读取文件名来打开文件

转载 作者:行者123 更新时间:2023-11-30 00:53:32 25 4
gpt4 key购买 nike

您好,我正在尝试从另一个文件中读取一个文件名,然后读取它。但我只能读取第一个文件,其中包含我要打开的第二个文件的名称。这是我的做法..

int main()
{
freopen("input1.txt","r",stdin);
while(cin>>fileName>>source>>destination)
{
//reads perfectly
char file[100];

for(int i=0;i<(int)fileName.size();i++)
file[i] = fileName[i];

file[(int)fileName.size()] = NULL;

freopen(file,"r",stdin);

mp.clear();
mp1.clear();

for(int i=0;i<cityNumber;i++)
adj[i].clear();
cityNumber = 0;

while(cin>>city1>>city2>>distanc)
{
//doesn't read
}
}

最佳答案

您的代码使用了过于复杂的结构。为什么不直接使用 C++ 方法:

#include <fstream>

int main()
{
std::ifstream input1("input1.txt");
while(input1 >> fileName >> source >> destination)
{
std::ifstream file(fileName.c_str());

mp.clear();
mp1.clear();

for(int i=0;i<cityNumber;i++)
adj[i].clear();
cityNumber = 0;

while(file >> city1 >> city2 >> distanc)
{
//work with values
}
}

关于c++ - 无法通过从 C++ 中的另一个文件读取文件名来打开文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16170104/

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