我需要确定用户输入的字符串是否可以创建具有该名称的文件。我的应用程序基于 Qt 构建并在 Windows 和 Mac OS 上运行。
我在 boost.filesystem 中发现了一个检查函数,即 native()。文档说,“对于操作系统的本机文件系统认为有效的名称返回 true。” 听起来像我需要的,但该功能无法正常工作并始终返回 false。我已经在路径中尝试了反斜杠和正斜杠,并使用现有和不存在的路径测试了函数——所有这些测试在 Windows 上都失败了。感谢 chris(请参阅下面的评论),他指出该功能可能被故意破坏(我倾向于同意这一点)。
所以问题是:如何实现我所需要的?