Dom操作xml的常用方法(Dom的全部方法和属性可到vs的对象浏览器察看)
创建DOM对象set objDomserver.CreateObject("microsoft.xmldom")
取得xml数据方法1 取得xml文件的xml数据 objDom.load("c:/test.xml")方法2 取得xml数据串的数据 objDom.loadxml("")
创建一个节点对象 Set NewnodeobjDom.CreateElement("people")给这个节点赴值 Newnode.Text"人" 给这个节点添加属性 Set NewAttributeobjDom.CreateNode("attribute","name","") NewAttribute.Text "张三" Newnode.SetAttributeNode NewAttribute给这个节点添加子节点 Set NewnodeChildobjDom.CreateElement("address") Newnode.appendChild NewnodeChild保存这个节点对象 objDom.appendChild Newnode objDom.save("c:/test.xml")
查找一个节点对象set objtofindobjdom.documentElement.SelectSingleNode("//people/man")取出这个节点对象的 节点名节点值某个属性值和全部的xmlnodenameobjtofind.nodenamenodevalueobjtofind.textobjtofind.GetAttributeNode("name").NodeValue 属性名为name的属性值
取出一个属性节点对象set objattrtofindobjdom.documentElement.SelectSingleNode("//people/man"). GetAttributeNode("name")取出这个节点的属性名属性值nodeattrnameobjattrtofind.nodenamenodeattrvalueobjattrtofind.nodevalue
删除一个节点对象set objnodeobjdom.documentElement.SelectSingleNode("//people/man") 要删除的节点set objparentnodeobjdom.documentElement.SelectSingleNode("//people") 要删除的节点的父节点objparentnode.removeChild objnode
取出一个节点的字节点集合set objnodesobjdom.documentElement.SelectSingleNode("//people/man").ChildNodes遍历这个集合方法1 for each element in objnodes response.write element.nodename 字节点名 response.write element.text 字节点值next方法2domlengthobjnodes.lengthfor i 0 to domlength-1 response.write objnodes.childnodes(i).nodename 字节点名 response.write objnodes.childnodes(i).text 字节点值next
取出一个节点的属性集合set objnodesobjdom.documentElement.SelectSingleNode("//people/man").GetAttributeNode("name").attributes遍历这个集合for each element in objnodes response.write element.nodename 属性名 response.write element.nodevalue 属性值next<%dim xmldoc,nodeset xmldocserver.CreateObject("msxml2.domdocument")xmldoc.asyncfalse 异步传输xmldoc.loadXML ""
xmldoc.createProcessingInstruction "xml","version1.0 encodinggb2312"
set nodexmlCreateNode(xmldoc,xmldoc.documentElement,"user",0,0,"")
xmlCreateNode xmldoc,node,"name",1,1,"ssm1226"xmlCreateNode xmldoc,node,"name",0,1,"呢称:雨中人"
*********************************************************函数功能添加子节点或属性xmldoc--XML DOM ObjectxmldocObj--要添加目的节点对象EleNameOrAttName--节点名或属性名Key--0-节点1-属ifTxt--是否有内容0-无;1-有Text--当ifTxt1时有效内容By 版权信息author:ssm1226 ;data:2003-1-2;copyright:yeboss.net*********************************************************function xmlCreateNode(xmldoc,xmldocObj,EleNameOrAttName,Key,ifTxt,Text) If Key0 then Dim SubNode set SubNodexmldoc.createElement(EleNameOrAttName) if ifTxt1 then SubNode.textText xmldocObj.appendChild SubNode set xmlCreateNodesubNode set SubNodeNothing ElseIf Key1 then Dim AttNode set AttNodexmldoc.createAttribute(EleNameOrAttName) if ifTxt1 then AttNode.textText xmldocObj.attributes.setNamedItem AttNode set xmlCreateNodeAttNode set AttNodeNothing End If end function
Response.Write xmldoc.xml%>