C++ 按文件的完整路径打开文件
我想询问用户文件存在的完整路径,然后将该路径保留在数组中。所以在程序中,我想打开存在于那个地方的文件。 但不幸的是,我不知道如何打开文件。 我尝试了以下代码,但不是真的C++ 按文件的完整路径打开文件,c++,file,C++,File,我想询问用户文件存在的完整路径,然后将该路径保留在数组中。所以在程序中,我想打开存在于那个地方的文件。 但不幸的是,我不知道如何打开文件。 我尝试了以下代码,但不是真的 string address; cin>>address; ifstream file(address); 如何以这种方式打开文件?事实上,代码按原样工作–至少在当前版本C++11中是这样 在此之前,您需要将字符串转换为C样式字符串: ifstream file(address.c_str(
string address;
cin>>address;
ifstream file(address);
如何以这种方式打开文件?事实上,代码按原样工作–至少在当前版本C++11中是这样 在此之前,您需要将字符串转换为C样式字符串:
ifstream file(address.c_str());
尽管您应该注意文件路径中的空格,如Capelic在其(现已删除)回答中所述;为了确保用户可以输入带有空格的路径(例如“~/some file.txt
”),请使用std::getline
而不是stream操作符:
getline(cin, address);
问题可能是
地址中存在空格
尝试使用GETLIN(CIN,地址)(感谢Konrad发现问题,我的C++有点生锈…)< /P>不能使用<代码> STD::CI::GETLION <代码> > <代码> STD::String < /代码>。是的,我将删除它——再次!
ofstream myfile;
myfile.open (adresse.c_str());