当前位置 : 主页 > 网页制作 > xml >

xml – 要选择哪种设置存储格式?

来源:互联网 收集:自由互联 发布时间:2021-06-13
我正在编写Qt应用程序,需要存储程序的设置.我希望非高级用户可以轻松编辑它们,但对高级用户来说足够灵活(因此可以通过其他程序,脚本等方便地进行自动编辑). QSettings提供两种格式
我正在编写Qt应用程序,需要存储程序的设置.我希望非高级用户可以轻松编辑它们,但对高级用户来说足够灵活(因此可以通过其他程序,脚本等方便地进行自动编辑). QSettings提供两种格式,原生格式(适用于 Windows是注册表)和INI格式(适用于大多数其他平台). INI很好,但是看到@QString(…)或其他Qt内容并不是真的可读并且有点容易出错.

注册表也不是很好.它不是为了编辑或高级使用而设计的,因此不是很好;它确实解决了跨线程和多个QSettings对象的同步问题(所以我不会擦除所有内容,尽管我可以使用一个全局对象,受读写锁定器保护).我正在研究XML,但它非常冗长,它需要编写QSettings格式(不是真正的问题),但非常灵活.

我知道存在其他XML替代方案,但我并不熟悉它们;我当然不想写一个解析器,我自己的最终格式的异常,而不是基本的东西.

更新 – 注意:我根本不会绕过QSettings,我只会为它编写一个格式 – 看起来它只是两个函数指针(用于读取和写入函数)传递给静态函数然后我可以使用我的格式.

更新2:我也担心Linux服务器,它通常没有GUI ..我希望人们能够通过nano或类似的东西轻松地从服务器编辑配置,而不使用管理器(是的,我会有一个守护进程服务器和一个远程GUI管理器).

如果由于某种原因你最终绕过QSettings并考虑配置文件的XML,我建议你看看JSON或YAST,具体取决于你喜欢的可用库.

作为旁注,如果您不打算让用户手动编辑文件,只需选择最适合您的文件(QSettings?)并继续您的生活,因为格式的选择无关紧要(har) HAR).

网友评论