用于管理路径/ URL的库

时间:2011-01-17 18:16:28

标签: c++ c url path cd

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 的语法。

2 个答案:

答案 0 :(得分:2)

查看google-url项目,它在Chrome及其C ++中使用。

答案 1 :(得分:0)

Boost Fileystem库有一个路径类,它支持您正在寻找的大部分内容。

它不是cd命令,而是为降序目录重载operator=/,并有一个用于升序的parent_path()方法。

它非常便携且易于学习。但是,它无法处理(AFAIK)URL路径。