c++ - 如何获取文件名命令行参数的完整路径?

标签 c++ c linux macos

我找到了很多库来帮助解析命令行参数,但似乎没有一个库可以处理文件名。如果我在命令行上收到类似“../foo”的信息,我如何找出文件的完整路径?

最佳答案

您可以使用 boost::filesystem 从文件的相对路径获取文件的绝对路径:

namespace fs = boost::filesystem;
fs::path p("test.txt");
fs::path full_p = fs::complete(p); // complete == absolute
std::cout << "The absolute path: " << full_p;

关于c++ - 如何获取文件名命令行参数的完整路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1661982/

相关文章:

c - 在等待 Stdin 时不调用 select 调用之前的 Printf

c++ - CMake 中的 OpenCV 和 Gtest 冲突

c++ - 等同于 Windows 操作系统的 Mac OSX API

c++ - 错误 : Cannot use typeid with -fno-rtti

c++ - 仅在需要时加载 DLL

c - 使用 getchar() 和 select() 从非阻塞 IO 获取多个字符时出现奇怪的 C 行为

c++ - 包含预处理器指令的多行宏语句

c - 尝试 printf 进度指示器时 c 循环中的奇怪怪癖

java - 挤压 test_suite Java 错误 "Cannot determine URI for '/suite_first/suite_first/tst_case1/test.js'。”

android - 文件描述符 3 的 bash 重定向是读取 tcp 端口和写入文本文件的最有效方法吗?