如何在Linux中使用QT(QDir)创建目录?

时间:2016-11-29 10:10:22

标签: c++ linux qt

我一直在尝试在Linux的根目录中创建一个目录。但由于我对Linux平台不熟悉,我无法在QT中编写正确的程序。你能看看我的代码并告诉我在哪里弄错了吗?

#include <QCoreApplication>
#include <QDebug>
#include <QDir>
#include <QString>

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
QDir mDir;
QString mpath="/home/qtfile";
if (!mDir.exists(mpath))
{
    mDir.mkpath(mpath);
    qDebug() <<"Created";
}
else if (mDir.exists(mpath))
{
    qDebug() <<"Already existed";
}
else
{
    qDebug()<<"Directory could not be created";
}
return a.exec();
}

感谢您的时间和考虑

编辑: - 谢谢大家。现在这个问题解决了

1 个答案:

答案 0 :(得分:0)

这可能是@SamratLuitel在评论中写的访问权限问题。

因此,您可以尝试在适当的家庭位置试一试,例如:

const QString& homePath = QStandardPaths::writableLocation(QStandardPaths::HomeLocation);
QDir dir(homePath);
if (dir.mkdir("somedir"))
{
    //success
}