首页 > 解决方案 > 在哪里可以找到文件系统路径规范

问题描述

我正在寻找一个,或者更可能是一小部分,概述文件系统路径元素的规范。我的意思是什么?主要是,我希望实现一个“简单”(读取,空引号)解析器规范来验证我正在读取的路径是否有效。最终,我想解析所述路径的分隔列表,即我可能从环境变量中读取。

我首先查看的是DOS / Windows规范,但我希望LinuxUNC等也是可以接受的变体。

现在,我能做的脑死的事情就是简单地取出字符串并在delimiter上进行标记,然后也许将标记交给类似or的东西。也许这就足够了?boost::filesystem::pathstd::filesystem::path

我知道对于诸如电子邮件地址、Uri 之类的东西有这样的规范。这就是我感兴趣的技术规范。

我的目标语言是C++。如果上述情况失败,我将利用Boost Spirit Qi进行解析器语法。我期望语法应该表达诸如有效字符之类的东西,在战略时期禁止无效字符之类的东西。

谢谢!

标签: parsingboostpathspecifications

解决方案


我找到了有关命名约定等的Microsoft 文档,它或多或少地概述了这个问题,至少就 Windows 而言。我还发现了这个陈述大纲

我目前专注于 Windows。开放式问题是关于drive_letterserversharenamedrive_spec和的命名约定physical_device。虽然,我觉得有点drive_specdrive_letter?然而,不是积极的。

否则,我将尽可能多地整理无效字符集,就像我是允许的字符、它们的序列、部分、扩展名、保留名称等一样。


推荐阅读