Qt QDir::mkpath函數(shù)使用
- mkdir()與mkpath()差別間API文檔
- 使用mkpath正確用法
bool CreateDir(const QString &path)
{
QDir dir;
return dir.mkpath(path);
}
運(yùn)行結(jié)果:
假設(shè)
path = "jack",函數(shù)執(zhí)行后,會在當(dāng)前文件下創(chuàng)建jack文件夾
而對于下面的代碼:
bool CreateDir(const QString &path)
{
QDir dir(path); // 注意
if(dir.exists())
{
return true;
}else{
dir.setPath("");
bool ok = dir.mkpath(path);
return ok;
}
}
運(yùn)行結(jié)果
假設(shè)
path = "jack",函數(shù)執(zhí)行后,會在當(dāng)前文件下創(chuàng)建jack/jack文件夾
出現(xiàn)這種原因是由于"mkpath()"函數(shù)執(zhí)行時(shí),實(shí)際創(chuàng)建的目錄為dir的路徑 + path的路徑,其實(shí)就是jack/jack
-
環(huán)境變量設(shè)置
對于qt使用上面的代碼調(diào)試時(shí),默認(rèn)創(chuàng)建的路徑可能在c盤用戶目錄下,而不是在編譯生成的目錄下,可以使用下面的方式將環(huán)境變量去除:
Qt項(xiàng)目配置
清除環(huán)境變量后,再次編譯運(yùn)行即可
