有没有办法用 Qt 4.6
检查给定的 QString
是否是当前操作系统上的有效文件名(或目录名)?我想检查名称是否有效, 而不是 检查文件是否存在。
例子:
// Some valid names
test
under_score
.dotted-name
// Some specific names
colon:name // valid under UNIX OSes, but not on Windows
what? // valid under UNIX OSes, but still not on Windows
我将如何实现这一目标?是否有一些 Qt
内置功能?
我想避免创建一个空文件,但是如果没有其他可靠的方法,我仍然想看看如何以“干净”的方式来做。
非常感谢。
原文由 ereOn 发布,翻译遵循 CC BY-SA 4.0 许可协议
我不认为 Qt 有内置函数,但如果 Boost 是一个选项,您可以使用 Boost.Filesystem 的 name_check 函数。
如果 Boost 不是一个选项,它关于 name_check 函数的页面仍然很好地概述了在各种平台上检查的内容。