在C++中,如何验证文件或文件夹路径?

bra*_*rad 3 c++ windows

目标路径的用户输入字符串可能包含空格或其他无效字符.

示例:"C:\ users\username\\ directoryname \"

请注意,这在路径的两侧都有空格,而在中间只有一个空格的文件夹名称无效.检查它是否是绝对路径是不够的,因为它只能真正处理前导空格.删除尾随空格也是不够的,因为您仍然在中间留下了无效的space-for-folder-name.

在我尝试使用它之前,如何证明路径有效?

Mic*_*ael 6

"证明"路径有效的唯一方法是打开它.

SHLWAPI提供了一组路径函数,可用于规范化路径或验证路径是否有效.这对于拒绝明显不好的路径很有用,但是如果不经过文件系统,你仍然不能相信路径是有效的.

使用NTFS,我相信您提供的路径实际上是有效的(尽管Explorer可能不允许您创建只有空格的目录.)