Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/cplusplus11/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
File ifstream可以';第二次尝试时找不到文件_File_C++11_Readfile_Ifstream - Fatal编程技术网

File ifstream可以';第二次尝试时找不到文件

File ifstream可以';第二次尝试时找不到文件,file,c++11,readfile,ifstream,File,C++11,Readfile,Ifstream,我有下面的代码。如果我立即输入文件名,它会找到没有问题的文件,而且我不需要做任何事情。但是,如果我键入了一个它没有首先找到的文件,它将不会在接下来的序列中找到该文件,即使它存在。有人知道怎么回事吗?该文件位于同一文件夹中 string fileName; cout << "Ingrese nombre archivo de carga: " << endl; cin >> fileName; if (fileName == "0") return f

我有下面的代码。如果我立即输入文件名,它会找到没有问题的文件,而且我不需要做任何事情。但是,如果我键入了一个它没有首先找到的文件,它将不会在接下来的序列中找到该文件,即使它存在。有人知道怎么回事吗?该文件位于同一文件夹中

string fileName;
cout << "Ingrese nombre archivo de carga: " << endl;
cin >> fileName;

if (fileName == "0")
    return false;


    ifstream infile(fileName); //here it should be filename
    while (true) {
        if (infile) {
            cout << "Cargando directorio..." << endl;
            break;
        } else {
            cout << "ERROR: No se pudo abrir el archivo." << endl;
        }
        cout << "Ingrese nombre archivo de carga: " << endl;
        cin >> fileName;
        if (fileName == "0")
            return false;


        ifstream infile(fileName); 
    }
字符串文件名;
cout文件名;
如果(文件名=“0”)
返回false;
ifstream-infle(文件名)//这里应该是文件名
while(true){
如果(填充){
库特
这声明了一个名为
infle
的变量

    ifstream infile(fileName); 
}
这声明了一个全新的变量,也称为
infle
。它的可视区域从声明点一直持续到封闭块的右括号(也就是说,不会很长)


您想改用旧的变量。请尝试调用它的
open
方法。

哦,天哪,我不敢相信这是一个如此小的错误。非常感谢,它工作得非常出色。
    ifstream infile(fileName); 
}