c++ - 如何最好地保存 XML 文件

标签 c++ xml language-agnostic tinyxml

我有一堆类,每个类都使用 TinyXML 从 XML 文件中读取它们的值。 .

我这样做是为了让一切都在内存中,我的用户正在使用应用程序并进行更改。如果用户按下保存,我需要遍历我的对象并调用写出 XML 文件的 Save() 函数。我是否应该从头开始以编程方式重建 XML 文件并将其写出?或者我应该使用我用来读取文件的相同TiXmlHandle,修改它然后写回吗?这样,原始顺序将被保留。如果我重新创建 XML,那么原始顺序将被更改。

我希望用户能够手动修改 XML,所以我认为他们手动更改它会很奇怪,只是在保存时重新排列它。我是否正确理解了我的选择?

以前从未使用过 TinyXML,也从未使用过 XML。

最佳答案

一旦您读取了 XML 输入,我就会处理掉读取句柄。

要将它们写回,您通常会在父文档类型对象或主文档类型对象中使用 writeXML() 方法,然后在设计中的每个对象中调用 writeXML() 方法。

附言。拥有不同的 XML 读写库并不罕见。
附页。如果您担心无法从对象层次结构强制执行的 XMl 文档中的顺序 - 您的某些基本设计有误。

关于c++ - 如何最好地保存 XML 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1787246/

相关文章:

Android XmlPullParser 获取标签之间的值

language-agnostic - 单一决策和行动陈述的首选风格是什么?

c++ - 任何编程语言中的变量名是否占用内存空间

c++ - 将图像从 Haskell 后端交互发送到 Qt QUI 的最佳方法

c++ - 英特尔 TBB - 'InitializeCriticalSectionEx' : identifier not found compiler error

xml - Scala XML 节点(带有命名空间)属性不可访问

c - 如何从 .msi 文件中提取资源

c++ - 在 C++ 中动态分配 vector 的安全方法是什么

使用 “unlock” 锁定后到 “LockWorkStation()” 窗口的 C++ 脚本

java - 如何在xml文件中显示/生成特殊字符 "&"?