如何根据用户输入打开文件

How to open file based on user input?

本文关键字:文件 输入 用户 何根      更新时间:2023-10-16

这个代码一直给我错误,我不知道我做错了什么?我如何请求用户输入文件名,然后打开该文件并执行任务与数据。

的例子:

#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main ()
{ 
ifstream inData;
ofstream outData;
string fileName;
cout << "Enter the data file Name : " << endl;//asks user to input filename
cin >> fileName; //inputs user input into fileName
inData.open(fileName); //heres where i try to open the file with the users input?
outData.open(fileName);
cout << fileName;
return 0;   
} 

代码一直给我错误。我试过使用getline?我希望fileName是字符串而不是炭。

std::string对象传递给参数,而不是实际的以空结尾的char指针。为此,使用c_str:

inData.open(fileName.c_str());
outData.open(fileName.c_str());