源目录有这个txt,我用codeblocks能读取成功。vs不在编译阶段报错也不知道哪里找原因了。
#include <iostream>#include<fstream>#include<string>#include<stdlib.h>using namespace std;int main(){ ifstream pfin; pfin.open("Pat.txt"); if (!pfin.is_open() ) { cerr << "Not opened.." << endl; system("pause"); exit(EXIT_FAILURE); } cout << "Union:"; system("pause"); return 0;}
解决方案
进程当前路径的问题,VS2015默认编译的出来的可执行文件的当前路径不是与EXE同级目录,而是在其上一级目录。
可将Pat.txt放到exe的上一级根目录下 或者 使用绝对路径,即可打开