C++ C/C++;文件读取错误
我收到了一条关于这个的错误消息,我假设问题出在文件名上的c/c++字符串上。Stand是我创建的C++字符串变量,我不能使用它,在OpenP.Open后的括号中。c_str()是我在一次讲座中被告知要做的事情,但这似乎不起作用。有什么想法吗C++ C/C++;文件读取错误,c++,C++,我收到了一条关于这个的错误消息,我假设问题出在文件名上的c/c++字符串上。Stand是我创建的C++字符串变量,我不能使用它,在OpenP.Open后的括号中。c_str()是我在一次讲座中被告知要做的事情,但这似乎不起作用。有什么想法吗 else if (start != "") { ifstream inp; inp.open(start.c_str()); if (inp.fail()) { error("Could not open
else if (start != "") {
ifstream inp;
inp.open(start.c_str());
if (inp.fail()) { error("Could not open file"); }
string row;
while (getline(inp, row)) {
filereadout.push_back(row);
}
}
}
inp.fail()中的文件“无法打开文件”。这个练习有一个打包版本,里面有文件,效果很好。所以我知道它不是文件。.start取决于用户输入,它是一个字符串变量,保存用户输入只需在
open
之前添加文件名的打印,即可查看文件名是否传递到open
,并检查该文件是否存在以及您是否具有读取权限。发布的代码是正确的。你的问题与字符串无关。无法打开文件的原因可能有很多。最可能的原因是您没有在您认为的位置查找文件。提示:当一个流似乎无法打开时,(1)检查文件名,除非它是完全限定的(2)getcwd()以查看程序实际从何处运行。你会惊讶地发现,人们经常惊讶地发现,他们当前在IDE发布中的工作目录与他们想象的不一样。