0

我正在尝试获取路径中的所有目录。例如,从a/b/c/d.e我想得到aa/ba/b/c。我可以通过dirname多次调用posix之类的函数来实现这一点。问题在于像a/b/c/. 我想得到a,a/ba/b/c. 既然有/以下c,c应该是我想列出的目录。但是函数像dirnamereturna/b而不是a/b/ca/b/c/作为输入给出时。

我可以直接拆分/以获取目录列表,还是存在无法正常工作的边缘情况?

4

1 回答 1

1

我知道的唯一特殊情况是

  1. 以文件名结尾
  2. /最后有一个
  3. 带有名为的文件夹名称a.e(可能会或可能不会在末尾)
  4. 符号链接
  5. Windows 路径(正在使用\,但我认为它不适用于您的情况)
  6. 用户输入错误,放多个/. 例如/tmp//something,某些程序支持

如果您的功能支持上述所有情况,我认为没问题。

于 2017-02-05T18:48:21.713 回答