Qt QDir::mkpath函数使用
- mkdir()与mkpath()差别间API文档
- 使用mkpath正确用法
bool CreateDir(const QString &path)
{
QDir dir;
return dir.mkpath(path);
}
运行结果:
假设
path = "jack"
,函数执行后,会在当前文件下创建jack
文件夹
而对于下面的代码:
bool CreateDir(const QString &path)
{
QDir dir(path); // 注意
if(dir.exists())
{
return true;
}else{
dir.setPath("");
bool ok = dir.mkpath(path);
return ok;
}
}
运行结果
假设
path = "jack"
,函数执行后,会在当前文件下创建jack/jack
文件夹
出现这种原因是由于"mkpath()"函数执行时,实际创建的目录为dir
的路径 + path的路径,其实就是jack/jack
-
环境变量设置
对于qt使用上面的代码调试时,默认创建的路径可能在c盘用户目录下,而不是在编译生成的目录下,可以使用下面的方式将环境变量去除:
清除环境变量后,再次编译运行即可