Qt5.0如何创建每用户持久数据目录

时间:2013-08-01 11:32:26

标签: qt5

我想存储每个用户的持久数据,这是代码

QDir::toNativeSeparators(QStandardPaths::writableLocation(
                         QStandardPaths::DataLocation) + "/random.xxx");

它正确显示位置,但不会自动创建目录 即

  

.local / share / organization name / application name / random.xxx

已指定应用程序名称和组织名称:

QApplication::setApplicationName(APPLICATION_NAME);
QApplication::setOrganizationName(ORGANIZATION_NAME);

当我手动创建目录时,一切正常。

2 个答案:

答案 0 :(得分:0)

尝试在QDir::toNativeSeparators中打包QDir::mkpath来电。

答案 1 :(得分:0)

这段代码对我有用:

QApplication::setApplicationName("MyApp");
QApplication::setOrganizationName("Me");

#if QT_VERSION >= 0x050000
    this->HomePath = QStandardPaths::writableLocation(QStandardPaths::DataLocation);
#else
    this->HomePath = QDesktopServices::storageLocation(QDesktopServices::DataLocation);
#endif