2

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";

我希望这些例子能让我的问题更清楚。基本上我需要库,它将跟踪关于cd在 POSIX 系统上的语法的所有更改目录命令。

4

2 回答 2

2

看看google-url项目,它在 Chrome 和它的 C++ 中使用。

于 2011-01-17T18:31:39.777 回答
0

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

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

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

于 2011-09-08T17:05:39.423 回答