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

Qt5.0如何创建每个用户的持久数据目录,qt5,Qt5,我想存储每个用户的持久数据,下面是代码 QDir::toNativeSeparators(QStandardPaths::writableLocation( QStandardPaths::DataLocation) + "/random.xxx"); 它正确显示位置,但不会自动创建目录 i、 e .local/share/organization name/application name/random.xxx 已指定应用程序名称和组织名称:

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

QDir::toNativeSeparators(QStandardPaths::writableLocation(
                         QStandardPaths::DataLocation) + "/random.xxx");
它正确显示位置,但不会自动创建目录 i、 e

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

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

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

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

尝试包装您的
QDir::tonativeparator
调用
QDir::mkpath

这段代码对我很有用:

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

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