首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >QSettings正在重写.ini文件,因此无法恢复这些值

问QSettings正在重写.ini文件,因此无法恢复这些值
EN

Stack Overflow用户
提问于 2015-06-19 16:08:29
回答 1查看 579关注 0票数 0

当我在Linux SLES11机器上使用下面的代码时,由于某种原因,.ini文件正在重新创建,因此我无法恢复我的设置。

同样的代码在Windows机器上运行良好。

我想在启动窗口中有最近打开的文件列表,以便用户可以快速选择。

代码语言:javascript
复制
void Window::saveRecentFileList()
{
    QSettings settings(m_settingsPath, QSettings::NativeFormat);
    settings.setValue("recentFiles/list", QVariant(m_recentFilesList));
}

void Window::restoreRecentFileList()
{
    QSettings settings(m_settingsPath, QSettings::NativeFormat);
    m_recentFilesList = settings.value("recentFiles/list").toStringList();
}
EN

回答 1

Stack Overflow用户

发布于 2015-06-20 01:39:54

尝试使用QSettings::IniFormat而不是QSettings::NativeFormat。在Windows上,您无论如何都应该使用具有特定ini文件位置的QSettings::IniFormat。Linux使用ini文件作为其设置存储的原生格式,但QSettings documentation建议:

在所有平台上,如果您想要直接读取INI文件,可以使用QSettings构造函数,该构造函数将文件名作为第一个参数,并将QSettings::IniFormat作为第二个参数传递。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30933129

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档