C++ 在源代码所在文件夹以外的其他文件夹中创建文件
我有以下文件夹结构: /代码 /档案 (即“文件”文件夹位于“代码”文件夹内) 我正在尝试使用fstream创建一个文件(并在其中写入),如下所示:C++ 在源代码所在文件夹以外的其他文件夹中创建文件,c++,file-io,fstream,C++,File Io,Fstream,我有以下文件夹结构: /代码 /档案 (即“文件”文件夹位于“代码”文件夹内) 我正在尝试使用fstream创建一个文件(并在其中写入),如下所示: ofstream out("\files\plsmap.txt"); 编译器没有给出任何错误,但是在“files”文件夹中没有创建任何文件。这可能的原因是什么?还有,是否有其他方法可以做到这一点您编写了“\files\plsmap.txt”。前导斜杠指定整个文件系统的根目录。所以“\files”与“\code\files”非常不同。您可以尝试删除
ofstream out("\files\plsmap.txt");
编译器没有给出任何错误,但是在“files”文件夹中没有创建任何文件。这可能的原因是什么?还有,是否有其他方法可以做到这一点您编写了“\files\plsmap.txt”。前导斜杠指定整个文件系统的根目录。所以“\files”与“\code\files”非常不同。您可以尝试删除前导斜杠,或更改字符串,使其包含您尝试写入的目录的完整绝对路径。您可以通过从终端在目录中运行pwd
来计算目录的绝对路径
除了错误的斜杠之外,还有一点要注意的是,反斜杠在C++字符串内部是特殊的,当你在C++源代码中写下时,它们需要用第二个反斜杠来转义:
const char * path = "code\\plsmap.txt";
您的环境可能允许您使用前斜杠,这会更容易,因为它们不需要转义。现在这些问题有一个完全相同的接收器-。它们可以标记为该问题的副本。