如何发现路径是否遇到某个父路径

How to find out if path meets certain parent?

本文关键字:路径 是否 遇到 何发现 发现      更新时间:2023-10-16

所以我们有一个像somepath/**这样的父母,所以如果有人给我们发送somepath/myfolder/file,我们会收到true,如果我们收到someotherpath/,我们会收到false。那么,如何确定路径是否遇到某个父结点呢?

您需要规范化两个路径,然后您做一个简单的子字符串比较,看看您的路径是否开始于规范化的引用路径。

规范化包括将当前工作目录添加到相对路径中,如果文件系统不区分大小写,则进行大小写规范化,可能会解析符号链接,甚至可能会测试硬链接。如果你想让文件本身成为一个符号链接,你必须在规范化之前提取路径部分。

我在linux中使用realpath()函数做到了这一点,它工作得很好,即使参考路径包含符号链接。但是我不知道如何使用boost。