如何使用结构化 QDataStream 和序列化?

How to use structured QDataStream and Serialization?

我有一个类似于 CSS 的数据结构,如 示例:

/* CSS like style sheet file *.pss */

@include "otherStyleSheet.pss";

/* comment */ [propertyID="72100000"] { fillColor : #f3f1ed;
minSize : 5; lineWidth : 3; }

/* sphere */ [propertyID="2352????"] { lineType : dotted; }

/* square */ [propertyID="2115????"] { lineType : thinline; }

/* ring */ [propertyID="2315????"] { lineType : thickline;
[hasInnerRing=true] { innerLineType : thinline; } }

所以我总是有一个根标签 propertyID 及其相应的属性,如 fillColorlineType等..

让我们假设,这个数据已经是结构化的(属性是 children 等).. 让我们说:

QStandardItemModel* treeModel = new QStandardItemModel();
  1. 当我在这样的 QStandardItemModel 中有上面的示例时,我如何以序列化的方式有效地从一个文件写入这个模型? (请不要JSON,不要XML推荐)

  2. 假设我只对文件中间的一个 propertyID 感兴趣,我可以在不解析前面的 propertyID 的情况下访问它吗? 提前致谢!

Here 是一个很好的例子。您的 propertyID 可以在单独的对象中构建,例如本例中的 UserRecord..

  1. 你必须完成之前的所有操作 'Records'