项目中一个小问题困扰了我几乎一个下午!利用ofstream创建txt的时候默认在当前工程的输出目录,如何修改到指定目录呢?基本思路就是把路径当成字符串,编译器会自动解析字符串中的路径,就是这么简单!下面给出代码实例。注意包含头文件#include<fstream> #include<string>方便创建文件及命名。
string fileName1 = "", fileName2 = "";
fileName1 += "E:\\工程源码\\coordinate\\";
string tmp = to_string(coordinate_count);
fileName1 += tmp;
fileName1 += "left";
fileName1 += ".txt";
fileName2 += "E:\\工程源码\\coordinate\\";
fileName2 += tmp;
fileName2 += "right";
fileName2 += ".txt";
ofstream lout(fileName1.c_str());//将fileName转化为c型字符串作为文件名
ofstream rout(fileName2.c_str());
这样就在E盘工程源码的coordinate目录下创建了两个名分别为fileName1和fileName2的txt文件。因为我需要生成多个txt文件,txt明明也在上面代码中体现出来了,我采用的是数字+字符串+.txt的命名格式,然后就可以直接往创建的txt文件中写入内容了,比如说下面的代码
lout << point.y << " " << point.x << endl;
rout << point.y << " " << point.x << endl;