目标path的用户inputstring可能包含空格或其他无效字符。
例如:“C: users username directoryname ”
请注意,这在path的两边都有空白,以及中间只有一个空格的无效文件夹名称。 检查它是否是一个绝对path是不够的,因为它只处理领先的空白。 删除尾随空白也是不够的,因为你仍然留下了无效的空间 – 文件夹名称在中间。
在我试图用它做任何事情之前,我如何certificatepath是有效的?
如何让CMake在生成visual studio解决scheme后执行一些脚本
如何列出在C中运行的进程?
如何从正在使用的文件中读取数据
如何开发Windows 2008 64位的C#控制台应用程序?
从应用程序驱动第二台监视
为什么不是config.cache_classes = false工作?
为什么python和py命令运行不同的python 3版本?
如何让Windows本机查找.NET的TreeView?
Java ImageIO.read()返回null
“证明”路径的唯一方法是打开它。
SHLWAPI提供了一组路径函数,可用于规范路径或验证路径似乎是有效的。 这可以有效地拒绝明显不好的路径,但是如果不通过文件系统,仍然不能相信路径是有效的。
对于NTFS,我相信你给的路径实际上是有效的(尽管资源管理器可能不允许你创建一个只有一个空格的目录。)
Boost文件系统库提供了操纵文件,路径等的助手…看看简单的ls示例和exists函数。
我使用GetFileAttributes检查存在。 适用于这两个文件夹(查找返回值中的FILE_ATTRIBUTE_DIRECTORY标志)和文件。 我已经做了多年,从来没有一个问题。
虽然我实际上认为你最好是“开放”,然后进行理论测试,但是你可能想看看这里描述的正则表达式。
如果你不想打开这个文件,你也可以使用类似POSIX平台上的access()函数或者Windows上的_access()和朋友。 不过,我喜欢里卡多指出的Boost.Filesystem方法。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。