sub getnodes(node) dim i response.write("<br><b>NodeName:</b>"&node.nodename&"<br><b>NodeTypeString:</b>"&node.nodetypestring&"<br><b>NodeValue:</b>"&node.nodevalue&"<br><b>Text:</b>"&node.text&"<br><b>node.childnodes.length:</b>"&node.childnodes.length&"<p>")
if node.childnodes.length<>0 then for i=0 to node.childnodes.length-1 getnodes(node.childnodes(i)) next end if end sub 用這個函數(shù)后,可以看到這個data.xml有10個Node 這些Node可以很簡單的定位: xmldoc xmldoc.childnodes(0) xmldoc.childnodes(1) xmldoc.childnodes(1).childnodes(0) xmldoc.childnodes(1).childnodes(0).childnodes(0) xmldoc.childnodes(1).childnodes(0).childnodes(0).text xmldoc.childnodes(1).childnodes(0).childnodes(1) xmldoc.childnodes(1).childnodes(0).childnodes(1).text xmldoc.childnodes(1).childnodes(0).childnodes(2) xmldoc.childnodes(1).childnodes(0).childnodes(2).text 是不是定位很簡單呀,還有個方法,比如定位<name> xmldoc.selectsinglenode("http://name")
'創(chuàng)建一個節(jié)點對象 Set Newnode=objDom.CreateElement("people") '給這個節(jié)點赴值 Newnode.Text="人" ' 給這個節(jié)點添加屬性 Set NewAttribute=objDom.CreateNode("attribute","name","") NewAttribute.Text= "張三" Newnode.SetAttributeNode NewAttribute '給這個節(jié)點添加子節(jié)點 Set NewnodeChild=objDom.CreateElement("address") Newnode.appendChild NewnodeChild '保存這個節(jié)點對象 objDom.appendChild Newnode objDom.save("c:/test.xml")
'查找一個節(jié)點對象 set objtofind=objdom.documentElement.SelectSingleNode("http://people/man") '取出這個節(jié)點對象的 節(jié)點名,節(jié)點值,某個屬性值,和全部的xml nodename=objtofind.nodename nodevalue=objtofind.text objtofind.GetAttributeNode("name").NodeValue '屬性名為name的屬性值
'取出一個屬性節(jié)點對象 set objattrtofind=objdom.documentElement.SelectSingleNode("http://people/man"). GetAttributeNode("name") '取出這個節(jié)點的屬性名,屬性值 nodeattrname=objattrtofind.nodename nodeattrvalue=objattrtofind.nodevalue
'刪除一個節(jié)點對象 set objnode=objdom.documentElement.SelectSingleNode("http://people/man") '要刪除的節(jié)點 set objparentnode=objdom.documentElement.SelectSingleNode("http://people") '要刪除的節(jié)點的父節(jié)點 objparentnode.removeChild objnode
'取出一個節(jié)點的字節(jié)點集合 set objnodes=objdom.documentElement.SelectSingleNode("http://people/man").ChildNodes 遍歷這個集合 方法1 for each element in objnodes response.write element.nodename 字節(jié)點名 response.write element.text 字節(jié)點值 next 方法2 domlength=objnodes.length for i = 0 to domlength-1 response.write objnodes.childnodes(i).nodename 字節(jié)點名 response.write objnodes.childnodes(i).text 字節(jié)點值 next
'取出一個節(jié)點的屬性集合 set objnodes=objdom.documentElement.SelectSingleNode("http://people/man").GetAttributeNode("name").attributes 遍歷這個集合 for each element in objnodes response.write element.nodename 屬性名 response.write element.nodevalue 屬性值 next