我一直在尝试在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();
}


感谢您的时间和考虑

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

最佳答案

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

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

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

关于c++ - 如何在Linux中使用QT(QDir)创建目录?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40863111/

10-09 13:27