如何更改变量文件名的文件路径?

时间:2017-06-29 17:32:44

标签: c++ file io ofstream

我在这里找到了一个非常有用的问题和答案: How to create ofstream file with name of variable?

但是因为我有<在这里有50个声望,我无法对那里的答案发表评论。

我有以下代码:

string fileName;
cout << "Enter file name: ";
cin >> fileName;
fileName += ".txt"; 
ofstream createFile;
createFile.open(fileName.c_str());

我想要做的就是将新创建的变量名'fileName.c_str()'保存到某个路径,例如/ home / Data /.../ fileName.c_str()。

每当我尝试明确地放置路径时:

createFile.open("/home/Geant4/Data/.../fileName.c_str()"); 

它将该文件保存为该文件中的'fileName.c_str()',没有新名称。 我无法在线找到有关更改变量文件名路径的信息,因此我们非常感谢您提供帮助。

谢谢。

2 个答案:

答案 0 :(得分:1)

尝试:createFile.open("/home/Geant4/Data/.../"+ filename);

答案 1 :(得分:0)

符号“”意味着它是一个字符串。你所做的是将代码放在一个字符串中,所以这将被视为一个字符串。

您实际上需要构建代表您的文件的字符串,包括路径和文件名。

string fileName;
cout << "Enter file name: ";
cin >> fileName;

string fullPath =  "/home/Geant4/Data/.../" + fileName + ".txt"; 
ofstream createFile;
createFile.open(fullPath.c_str());