XML编程实例(1)
前段时间,由于工作的需要,利用到了XML,所以对其进行了一些简单的研究。在此愿把一些心得写出来,与各位分享,不对的地方还望多多包涵。 1.什么是 XML? 首先,我想各位应该都已经大概知道什么是XML了。如果,你对什么是XML还没有一个概念的话,你可以看一些相关的材料,我就不多说了。 2.为什么要用XML? 其实,刚开始我也不是很明白,后来在工作中才慢慢意识到。首先,我写的程序需要传送很多的数据结构,比如表格,目录树等等。要在以往,我想自己会去定义一个数据结构。这是相当麻烦的一件事情,而且当这个结构需要不断更新,有很大的灵活性时,那就更让人头疼了,更别说通用性和跨平台了。这时候,XML对树形结构数据的强大表达能力就显示出来了。比如一个表格数据。 <TABLE> <TR> <TD> 11</TD> <TD>12</TD> </TR> <TR> <TD> 21</TD> <TD>22</TD> </TR> </TABLE> 11 12 21 22
DOM模型: 前面已经说了,对于DOM模型来说,整个XML文件被解析成一个树形的结构。所有的标签、属性等都被当作对象来看待。所以,必须了解清楚对象的含义,及其相互关系,方能正确操作。 为了先有一个感性认识,让我们开始吧。(为了方便说明,代码里基本上没有异常处理) 生成一个XML文本 假设我们要创建一个如下的XML文本 <China> <Beijing> -11 </Beijing> <Shanghai weather=”Cloudy”> 9 </Shanghai> </China> 我们首先应该先创建一个Document对象,如下:MSXML::IXMLDOMDocumentPtr pDoc; pDoc.CreateInstance(__uuidof(MSXML::DOMDocument)); 如果创建成功,那么我们就会得到一个XMLDOMDocument对象实例。 下一步就是添加 根节点DocumentElement,记住XML只有一个根。 创建Element对象 作为根节点 MSXML::IXMLDOMElementPtr pDocElement=pDoc->createElement("China");