C++ 具有自定义名称和路径的流

C++ 具有自定义名称和路径的流,c++,C++,我想创建一个bat文件,该文件存储在一个特定的文件夹字符串path=C:\Users\中,其名称由用户指定并保存在字符串中。怎么做 我在另一个问题上看到了类似的内容:path\\filename,但在我的例子中,名称是一个字符串,所以我不知道如何创建它 void BatFile() { std::string filename, username; std::cout << "Name your save file in database:\n\n"; std::ci

我想创建一个bat文件,该文件存储在一个特定的文件夹字符串path=C:\Users\中,其名称由用户指定并保存在字符串中。怎么做

我在另一个问题上看到了类似的内容:path\\filename,但在我的例子中,名称是一个字符串,所以我不知道如何创建它

void BatFile()
{
    std::string filename, username;
    std::cout << "Name your save file in database:\n\n"; std::cin >> filename;
    filename = filename + ".bat";
    std::ofstream batout(filename);
    std::cout << "Username="; std::cin >> username;
    batout.open(filename);
    batout <<""; //write to bat file.
    batout.close();
}
我把路径放在字符串中,因为我不知道我是否会选择用户想要保存bat文件的目录。你可以将字符串与+

像这样:

std::string directory = ”C:/this/that/”;
std::string name;
if (std::cin >> name)
{
    std::ofstream out(directory + name + ”.bat”);
    out << ”Hello, Joe!”;
}

不清楚你在问什么。你的代码有什么问题?在哪些方面应该有所不同?为什么你要打开文件两次,而不使用用户名做任何事情?@user463035818并不难理解。我想在文件夹中创建一个bat文件,该文件夹的路径存储在字符串中。这个名字是用户输入的变量。显然对我来说太难了。您已经在代码中连接字符串,并且已经使用字符串文件名打开文件,所以我真的不明白您的要求。@a完全可以。你试过了吗?文件名在Windows上可以有空格,所以std::getlinestd::cin,name比std::cin更有意义>>name@RemyLebeau这是一个说明性的例子,不是一篇关于软件工程的文章。它很简单。。。哈哈。就为了2个反斜杠,我研究了2个小时。我只需要在:std::string folder=C:\\Users\\AmicuLL\\Desktop;`@RemyLebeau你是对的,但在这种情况下,名称将不带空格。它会像:p1,p2等等。