【发布时间】:2020-06-17 04:52:40
【问题描述】:
假设文件和文件夹确实存在,我想要一个函数来检查文件是否包含在文件夹中。
例如:/a/b 包含/a/b/c/d.e,/a/b 包含/a/b/c.d,/a/b 不包含/a/b/../c/d.e。
我现在得到的是规范化路径,然后比较前缀部分。有没有一些干净简单的方法可以做到这一点?
【问题讨论】:
-
@JesperJuhl:或者en.cppreference.com/w/cpp/filesystem/exists?
-
另一种方式...stackoverflow.com/questions/4316442/…(以及里面的所有链接答案)
-
规范化路径实际上有点棘手。这不仅仅是字符串操作规则,因为如果
/a/b是指向/q/r/s的软链接,那么文件系统上的/a/c/d.e≠/q/r/s/c/d.e。 -
@Fred 我只是想提供一个指向主文件系统库概览页面的链接。我假设 OP 可以从那里读取并找到所需的细节 + 可能还会发现更多有用的东西。
标签: c++ regex string path filesystems