Qt C++:将项目保存在文件中[重复]

Posted

技术标签:

【中文标题】Qt C++:将项目保存在文件中[重复]【英文标题】:Qt C++: Save project in file [duplicate] 【发布时间】:2013-06-10 17:02:36 【问题描述】:

我想将内存中的数据保存到某个文件中。这包括 QFileSystemModel 和其他对程序创建一些进展很重要的东西。如何创建一些导出文件,从中读取这些设置以及如何读取它?

【问题讨论】:

【参考方案1】:

创建一些架构来存储您的类/文件的所有重要持久变量。

创建一个保存函数,将所有这些变量推送到一个文件中。

创建一个从文件中检索所有这些变量的加载函数。

如果您的文件包含大量二进制数据或大型结构,您可能应该自己制作。

Qt 有 XML 和 JSON 可用,如果其中一种可以使用的话。 (基于树或节点的信息)。

http://qt-project.org/doc/qt-4.8/examples-xml.html

http://qt-project.org/doc/qt-4.8/xmlpatterns-filetree.html

http://qt-project.org/doc/qt-5.0/qtcore/json.html

如果它们是一些较短的设置变量,例如一两个字符串,或者是原生 Qt 对象,例如 QRectQPointQStringList 等,您可以使用QSettings.

另外,QSettings 有一种非常巧妙的方式来处理默认值和回退,以及使用应用程序名称和组织名称。我喜欢 INI 格式。

http://qt-project.org/doc/qt-5.0/qtcore/qsettings.html

希望对您有所帮助。

【讨论】:

以上是关于Qt C++:将项目保存在文件中[重复]的主要内容,如果未能解决你的问题,请参考以下文章

Qt Creator 将文件添加到 C++ 项目问题

如何将 Qt 库连接到标准 C++ 项目?

C++。将.dll文件链接到项目[重复]

如何将 Qt 集成到现有的 C++ 项目中

我在 Qt 设计器文件->新建中找不到 C++ 项目

在现有 C++ QT 项目中实例化 QML 对象