gpt4 book ai didi

windows - Qt:带有 INI 文件和注释的 Windows 上的 QSettings

转载 作者:可可西里 更新时间:2023-11-01 13:25:54 26 4
gpt4 key购买 nike

我有一个在 Windows 上使用 Qt 4.5.2 编写的应用程序。我将一些设置存储在 INI 文件中,并使用 QSettings 加载和保存设置。我想在 INI 文件中添加一些注释。

例如:

; Meta-info to store with the file
[General]
MainWindow\size=@Size(1280 600)
MainWindow\pos=@Point(0 300)
Debugging=true

但是,我发现当我用

加载设置文件时
QSettings settings( "settings.ini", QSettings::IniFormat );

注释从文件中删除。 INI 文件在加载后通过调用 QSettings::sync() 重写(这是由构造函数自动完成的)。有没有办法在同步后保留评论?

抢先评论:

  • 我想要 Windows 中的 INI 文件以实现 future 的跨平台兼容性
  • 我想在文件中存储元信息以供应用程序外部引用
  • 我正在考虑将元信息作为 INI 的一部分并使用 name=value 规则,但更愿意将信息保留为注释

最佳答案

QSettings 没有“保存”的概念。您对其所做的所有更改都被视为最终更改,并经常且透明地写入磁盘。

QSettings 的文档中,没有提到 ini 文件中的注释。它确实有一定道理:毕竟,它也可以是注册表值。将其视为生成的文件:它是一个。

这是我的建议:

[General]
Comment = @String(Meta-info to store with the file)
MainWindow\size=@Size(1280 600)
MainWindow\pos=@Point(0 300)
Debugging=true

我不知道它是否有效,试一试,看看它实际上是如何存储字符串的。哦,请确保您从代码中设置它或正确记录它,以避免在程序中意外使用相同的标识符。

关于windows - Qt:带有 INI 文件和注释的 Windows 上的 QSettings,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1712500/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com