什么容器最适合管理XML数据?

时间:2012-03-19 18:54:20

标签: c++ containers

想象一下,我有XML数据:

<tag> value</tag> etc ....
<othertag> value  value2 value_n </othertag> 
etc ....

管理此信息的最佳容器是什么? 一个简单的向量,一个列表,其他?

我将进行简单的插入,搜索,删除 当然代码将是“有些粗鲁”。

我知道会有XML特定的实用程序,但我想知道你的意见。

2 个答案:

答案 0 :(得分:2)

“管理XML的最佳容器”通常是一个DOM树,因为它可以存储XML源中存储的所有信息,并以符合代码的方式呈现;仍然,取决于你想对这些数据做什么,它可能是过度的。

另一方面,由于你想要做的事实上是XML树的通用操作,我认为它可能是你最好的选择;抓住一个好的XML解析器,生成一个DOM树并使用它。


个人提示:,不要再重新发明一个XML方形轮 - 有足够多的破解XML解析器,我们不需要另一个。使用一个众所周知的,符合标准的XML解析器(例如Xerces-C++)来生成你的DOM树并对它感到满意。

答案 1 :(得分:1)

那很大程度上取决于你的xml数据。是否有一个没有特殊标识符的对象列表?或者您是否希望能够快速识别列表中的对象(即具有映射?)。

您始终可以使用http://linuxsoftware.co.nz/cppcontainers.html做出决定。页面底部的流程图特别有用。