C++ ifstream 由用户输入文件路径问题C/C++ code#include iostream#include fstreamusing namespace s
C++ ifstream 由用户输入文件路径问题
- C/C++ code
#include <iostream>#include <fstream>using namespace std;int main(){ ifstream infile("language.txt",ifstream::in); while (!infile) { cout<<"open error"<<endl; char error[1000]; cin.getline(error,800); strcat (error,"\\language.txt"); cout<<error<<endl; ifstream infile(error,ifstream::in); }}目的,打开一个程序当前工作目录下的一个文件,如果失败,手动输入路径,路径中需支持中文和空格。
如打开失败后输入“E:\My Program\CPP\ifstream cmd\ifstream cmd\Debug”
程序输出error是“E:\My Program\CPP\ifstream cmd\ifstream cmd\Debug\language.txt”是正确的
但是file还是open error
[解决办法]
http://www.cnblogs.com/carekee/articles/1749357.html
infile.clear(ios::goodbit);
