代码简单,使用递归创建多级目录
/**
* @brief mkMutiDir 创建多级目录
* @param path 未创建的目录
* @return 返回已创建的目录
*/
QString mkMutiDir(const QString path){
QDir dir(path);
if ( dir.exists(path)){
return path;
}
QString parentDir = mkMutiDir(path.mid(0,path.lastIndexOf('/')));
QString dirname = path.mid(path.lastIndexOf('/') + 1);
QDir parentPath(parentDir);
if ( !dirname.isEmpty() )
parentPath.mkpath(dirname);
return parentDir + "/" + dirname;
}
QString path = "d:/download/1234/abc/11/22/";
qDebug() << mkMutiDir(path);