在Qt,C ++中检查文件夹是否存在(以及创建文件夹)

时间:2010-02-11 02:19:11

标签: c++ qt filesystems

在Qt中,如何检查当前目录中是否存在给定文件夹?
如果它不存在,我该如何创建一个空文件夹?

5 个答案:

答案 0 :(得分:209)

要检查名为“Folder”的目录是否存在,请使用:

QDir("Folder").exists();

要创建名为“MyFolder”的新文件夹,请使用:

QDir().mkdir("MyFolder");

答案 1 :(得分:134)

要检查它是否存在并创建它是否存在,包括中间人:

QDir dir("path/to/dir");
if (!dir.exists())
    dir.mkpath(".");

答案 2 :(得分:11)

当你使用QDir.mkpath()时,如果路径已经存在则返回true,另一方面,如果路径已经存在,QDir.mkdir()将返回false。因此,根据您的计划,您必须选择更合适的程序。

您可以在Qt Documentation

上查看更多内容

答案 3 :(得分:0)

如果您需要一个空文件夹,您可以循环直到获得一个空文件夹

    QString folder= QString ("%1").arg(QDateTime::currentMSecsSinceEpoch());
    while(QDir(folder).exists())
    {
         folder= QString ("%1").arg(QDateTime::currentMSecsSinceEpoch());
    }
    QDir().mkdir(folder);

在这种情况下,您将获得一个带有数字的文件夹名称。

答案 4 :(得分:-7)

为什么要使用其他东西?

  mkdir(...);