我在使用Qt创建dir时遇到问题。 我想在文档中创建一个目录,所以,我做了一些类似的事情:
QString path("C:/Users/Me/Documents/MyApp/profiles/");
Qdir dir = QDir::root();
dir.mkdir(path);
但这不起作用!我用“/”和“\”测试分隔符,但在两种情况下不起作用。
我如何创建我的目录?
谢谢。
答案 0 :(得分:31)
你可以这样做:
QDir dir(path);
if (!dir.exists()){
dir.mkdir(".");
}
答案 1 :(得分:13)
尝试将QDir::mkpath
用作dir.mkpath(path);
答案 2 :(得分:4)
QDir dir = QDir::root()
创建一个QDir
实例,配置为指向root并将该设置复制到dir
。为避免额外的副本和代码,您可以使用QDir dir(QDir::root);
。在Windows上,它将指向系统驱动器的根目录,通常为C:\
。
dir.mkdir(path);
将尝试在当前配置的目录(root)中创建名为path
的子目录。此方法需要单个目录名称而不是完整路径。它还会返回您应该检查的bool
结果。
您可能希望调用dir.mkpath(path)
,它将尝试创建指定的子目录以及导致它的所有必需的父目录。同样,您应该检查结果以确定它是否成功。
答案 3 :(得分:0)