Я написал небольшую программу VC++, используя VS2012, и попытался прочитать текстовый файл. Я помещаю файл в папку выпуска. Однако я не могу прочитать файл до использования абсолютного каталога файлов. Однако я не могу найти полезную информацию в Интернете. Код такой какПочему моя программа на C++ может читать только абсолютный каталог, но не файл в той же папке?
#include<iostream>
#include<fstream>
#include<string>
using namespace std;
int main()
{
cout<<"Hello World!"<<endl;
string test;
ifstream myfile;
myfile.open("E:\\Glus\\Project2\\Release\\bunny.txt");
if(myfile.is_open())
{
string s0,s1;
int x0, x1;
myfile>>s0>>x0;
cout<<s0<<x0<<endl;
myfile>>s1>>x1;
cout<<s1<<x1<<endl;
}
else
{
cout<<"Error in reading file!"<<endl;
}
myfile.close();
cin>>test;
return 0;
}
Спасибо!
Что такое каталог, в котором вы сказали VS, чтобы запустить вашу программу? Это не обязательно тот же каталог, в котором живет файл '.exe'. –
По умолчанию VS использует папку проекта в качестве текущего каталога, тогда как исполняемые файлы создаются для '.. \ Win32 \ Release' и т. Д. –