C或C ++中是否有任何库可以帮助管理路径或URL?
或者也许来自其中一种语言的标准库中的函数
示例:
想象一下以下API:
class Path {
public:
Path(std::string &path);
std::string getPath();
void cd(std::string &path);
}
我需要的是这个库将处理以下情况:
示例1 :
Path *p = new Path("/level_one/level_two/level_three");
p->cd("..");
现在p->getPath() == "/level_one/level_two";
,
示例2 :
p->cd("../level_TWO");
现在p->getPath() == "/level_one/level_TWO";
,
示例3 :
p->cd("/level_ONE");
现在p->getPath() == "/level_one";
。
我希望这些例子能让我的问题更加明确。基本上我需要库,它将跟踪所有更改目录命令,关于POSIX系统上 cd 的语法。
答案 0 :(得分:2)
查看google-url项目,它在Chrome及其C ++中使用。
答案 1 :(得分:0)
Boost Fileystem库有一个路径类,它支持您正在寻找的大部分内容。
它不是cd
命令,而是为降序目录重载operator=/
,并有一个用于升序的parent_path()方法。
它非常便携且易于学习。但是,它无法处理(AFAIK)URL路径。