c++ 当给出相对路径时,从std::ofstream变量获得完整的系统路径

8qgya5xd  于 2023-08-09  发布在  其他
关注(0)|答案(1)|浏览(136)

我正在写一个txt文件到一个相对目录路径,下面是代码片段

std::ofstream file1("./../../newfile.txt");
file1 << "Something written to file" << endl;
file1.close();

字符串
给定的相对路径是./../../newfile.txt

Question-是否可以从file1变量中获取文件在我电脑中的完整路径。我想打印文件在代码中写入的最终完整路径。

我确实设置了一个断点并检查了字段,但它没有显示完整的系统路径。

disho6za

disho6za1#

问题是,fstream使用路径,它们不存储它。
尽管您可以通过简单地将路径存储在变量中来解决这个缺点。

auto path = "./../../newfile.txt";
std::ostream file1{path};

auto fullPath = std::filesystem::absolute(std::filesystem::path(path));

std::cout << fullPath.c_str();

字符串

相关问题