Aja*_*jay 6 c c++ windows winapi filenames
我想要一个函数,可能在Path Functions中,它可以检查文件名是否有效。有效是指字符串中存在的字符是否全部有效(例如,?没有等)。>但遗憾的是,没有任何功能。浏览网络,我发现很少的技术,没有一个是我喜欢的,也没有找到可靠的。
%TEMP%系统路径中。如果创建失败,则文件名(可能)无效。否则,它是有效的(因此,删除该文件)。?:*>)函数的扩展形式是检查所有无效名称(例如AUX等CON),但这不是问题(至少目前如此)。
是否有任何我可能错过的已记录/未记录的函数,它可以可靠地检查文件名(而不是路径名)是否有效。
编辑:该PathCleanupSpec功能现已弃用并且不再受支持。有关详细信息,请参阅Requirements链接页面末尾的部分。
谢谢康纳的招待。对于其他读者,函数名称是PathCleanupSpec。我使用它实现了以下功能:
bool IsLegalFileName(LPCWSTR filename)
{
WCHAR valid_invalid[MAX_PATH];
wcscpy_s(valid_invalid, filename);
int result = PathCleanupSpec(nullptr, valid_invalid);
// If return value is non-zero, or if 'valid_invalid'
// is modified, file-name is assumed invalid
return result == 0 && wcsicmp(valid_invalid, filename)==0;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5433 次 |
| 最近记录: |