gpt4 book ai didi

c++ - 从 std::filesystem::path 中移除点前缀 "./"

转载 作者:行者123 更新时间:2023-12-05 01:26:08 25 4
gpt4 key购买 nike

有没有一种简单的方法可以去除路径的起始 ./ 。例如:我有一个路径 ./x/y 并且我想将它转换为 x/y (没有第一个点和斜杠)。有标准的方法吗?

#include <iostream>
#include <filesystem>

namespace filesystem = std::filesystem;

int main() {
auto path = filesystem::path{"./x/y"};
std::cout << path << std::endl;
std::cout << ???? << std::endl; // How do I do this?
}

最佳答案

显然这个问题可以用 std::filesystem::relative() 解决:

#include <iostream>
#include <filesystem>

namespace filesystem = std::filesystem;

int main() {
auto path = filesystem::path{"./x"};
std::cout << path << std::endl;
std::cout << filesystem::relative(path, "./") << std::endl; //
}

生产

"./x"
"x"

关于c++ - 从 std::filesystem::path 中移除点前缀 "./",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70427448/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com