不错呦!smile@林凯西,确保“准备文件”中的几个文件都有安装,S...您好,看了您这篇帖子觉得很有帮助。但是有个问题想请...我的修改过了怎么还被恶意注册呢 @jjjjiiii 用PJ快9年了,主要是A...PJ3啊,貌似很少有人用PJ了,现在不是WP就是z...@332347365,我当时接入时错误码没有-10...楼主,ChkValue值应为-103是什么意思呢?...大哥 你最近能看到我发的信息,请跟我联系,我有个制...
XMLDOM对象操作实例
编辑:dnawo 日期:2007-04-09
本例主要利用XMLDOM对象的一些方法和属性进行创建、查找、更新、删除节点及属性,也借以来说明在ASP中如何利用XMLDOM对象对XML文件进行一些简单的操作,主要代码如下:
创建
查找
更新
删除
创建
复制内容到剪贴板
程序代码

<%
'//创建DOM对象
Dim objDom
Set objDom = Server.CreateObject("MicroSoft.XMLDom")
'//创建根节点
Dim rootNode
Set rootNode = objDom.CreateElement("people")
objDom.appendChild rootNode
'//创建第一个子节点
Dim nodeChild,nodeChild2,nodeChild3
Set nodeChild = objDom.CreateElement("person")
Set nodeChild2 = objDom.CreateElement("name")
Set nodeChild3 = objDom.CreateElement("age")
nodeChild2.Text = "张三"
nodeChild3.Text = "25"
rootNode.appendChild nodeChild
nodeChild.appendChild nodeChild2
nodeChild.appendChild nodeChild3
'//给节点添加属性
Dim NewAttribute
Set NewAttribute = objDom.CreateNode("attribute","sex","")
NewAttribute.Text = "boy"
nodeChild2.SetAttributeNode NewAttribute
'//创建第二个子节点
Dim nodeChild4,nodeChild5,nodeChild6
Set nodeChild4 = objDom.CreateElement("person")
Set nodeChild5 = objDom.CreateElement("name")
Set nodeChild6 = objDom.CreateElement("age")
nodeChild5.Text = "李四"
nodeChild6.Text = "26"
rootNode.appendChild nodeChild4
nodeChild4.appendChild nodeChild5
nodeChild4.appendChild nodeChild6
'//保存为XML文件
objDom.save(Server.MapPath("test.xml"))
%>
'//创建DOM对象
Dim objDom
Set objDom = Server.CreateObject("MicroSoft.XMLDom")
'//创建根节点
Dim rootNode
Set rootNode = objDom.CreateElement("people")
objDom.appendChild rootNode
'//创建第一个子节点
Dim nodeChild,nodeChild2,nodeChild3
Set nodeChild = objDom.CreateElement("person")
Set nodeChild2 = objDom.CreateElement("name")
Set nodeChild3 = objDom.CreateElement("age")
nodeChild2.Text = "张三"
nodeChild3.Text = "25"
rootNode.appendChild nodeChild
nodeChild.appendChild nodeChild2
nodeChild.appendChild nodeChild3
'//给节点添加属性
Dim NewAttribute
Set NewAttribute = objDom.CreateNode("attribute","sex","")
NewAttribute.Text = "boy"
nodeChild2.SetAttributeNode NewAttribute
'//创建第二个子节点
Dim nodeChild4,nodeChild5,nodeChild6
Set nodeChild4 = objDom.CreateElement("person")
Set nodeChild5 = objDom.CreateElement("name")
Set nodeChild6 = objDom.CreateElement("age")
nodeChild5.Text = "李四"
nodeChild6.Text = "26"
rootNode.appendChild nodeChild4
nodeChild4.appendChild nodeChild5
nodeChild4.appendChild nodeChild6
'//保存为XML文件
objDom.save(Server.MapPath("test.xml"))
%>
查找
复制内容到剪贴板
程序代码

<%
'//创建DOM对象
Dim objDom
Set objDom = Server.CreateObject("MicroSoft.XMLDom")
'//加载XML文件
objDom.async = false '不允许异步下载
objDom.load(Server.MapPath("test.xml"))
'//创建根节点对象
Dim objRoot
Set objRoot = objDom.documentElement
'//查找指定节点并获取节点名称、节点值及指定属性值
Dim objFind,nodeName,nodeValue,nodeAttribute
Set objFind = objRoot.SelectSingleNode("//people/person/name")
nodeName = objFind.nodename
nodeValue = objFind.text '结合更新体会text属性的可读可写
nodeAttribute = objFind.GetAttributeNode("sex").NodeValue
Response.write "1.查找指定节点并获取节点名称、节点值及指定属性值<br/>"
Response.write nodeName & "<br/>"
Response.write nodeValue & "<br/>"
Response.write nodeAttribute & "<br/><br/>"
'//取出一个节点的子节点集合
Dim objSubNodes
Set objSubNodes = objRoot.SelectSingleNode("//people/person").ChildNodes
Response.write "2.取出一个节点的子节点集合<br/>"
'方法1
For each element in objSubNodes
Response.write element.nodename & "=" & element.text & "<br/>"
Next
Response.write "<br/>"
'方法2
'For i = 0 to objSubNodes.length-1
' Response.write objSubNodes.Item(i).nodename
' Response.write objSubNodes.Item(i).text
'Next
'//取出一个节点属性对象
Dim objAttr,attrName,attrValue
Set objAttr = objRoot.SelectSingleNode("//people/person/name").GetAttributeNode("sex")
attrName = objAttr.nodename
attrValue = objAttr.nodevalue
Response.write "3.取出一个节点属性对象<br/>"
Response.write attrName & "=" & attrValue & "<br/><br/>"
'//取出一个节点的属性集合
Dim objSubSttrs
Set objSubSttrs = objRoot.SelectSingleNode("//people/person/name").attributes
Response.write "4.取出一个节点的属性集合<br/>"
For each element in objSubSttrs
Response.write element.nodename & "=" & element.nodevalue & "<br/>"
Next
%>
'//创建DOM对象
Dim objDom
Set objDom = Server.CreateObject("MicroSoft.XMLDom")
'//加载XML文件
objDom.async = false '不允许异步下载
objDom.load(Server.MapPath("test.xml"))
'//创建根节点对象
Dim objRoot
Set objRoot = objDom.documentElement
'//查找指定节点并获取节点名称、节点值及指定属性值
Dim objFind,nodeName,nodeValue,nodeAttribute
Set objFind = objRoot.SelectSingleNode("//people/person/name")
nodeName = objFind.nodename
nodeValue = objFind.text '结合更新体会text属性的可读可写
nodeAttribute = objFind.GetAttributeNode("sex").NodeValue
Response.write "1.查找指定节点并获取节点名称、节点值及指定属性值<br/>"
Response.write nodeName & "<br/>"
Response.write nodeValue & "<br/>"
Response.write nodeAttribute & "<br/><br/>"
'//取出一个节点的子节点集合
Dim objSubNodes
Set objSubNodes = objRoot.SelectSingleNode("//people/person").ChildNodes
Response.write "2.取出一个节点的子节点集合<br/>"
'方法1
For each element in objSubNodes
Response.write element.nodename & "=" & element.text & "<br/>"
Next
Response.write "<br/>"
'方法2
'For i = 0 to objSubNodes.length-1
' Response.write objSubNodes.Item(i).nodename
' Response.write objSubNodes.Item(i).text
'Next
'//取出一个节点属性对象
Dim objAttr,attrName,attrValue
Set objAttr = objRoot.SelectSingleNode("//people/person/name").GetAttributeNode("sex")
attrName = objAttr.nodename
attrValue = objAttr.nodevalue
Response.write "3.取出一个节点属性对象<br/>"
Response.write attrName & "=" & attrValue & "<br/><br/>"
'//取出一个节点的属性集合
Dim objSubSttrs
Set objSubSttrs = objRoot.SelectSingleNode("//people/person/name").attributes
Response.write "4.取出一个节点的属性集合<br/>"
For each element in objSubSttrs
Response.write element.nodename & "=" & element.nodevalue & "<br/>"
Next
%>
更新
复制内容到剪贴板
程序代码

<%
'//创建DOM对象
Dim objDom
Set objDom = Server.CreateObject("MicroSoft.XMLDom")
'//加载XML文件
objDom.async = false '不允许异步下载
objDom.load(Server.MapPath("test.xml"))
'//创建根节点对象
Dim objRoot
Set objRoot = objDom.documentElement
'//修改张三的姓名及性别
Dim objSub
Set objSub = objRoot.SelectSingleNode("//people").childNodes.item(0)
objSub.childNodes.item(0).text = "王五" '结合查询体会text属性的可读可写
objSub.childNodes.item(0).GetAttributeNode("sex").nodevalue = "girl"
'//给李四添加性别属性
Dim NewAttribute
Set NewAttribute = objDom.CreateNode("attribute","sex","")
NewAttribute.Text = "boy"
'不创建对象,直接添加属性
objRoot.SelectSingleNode("//people").childNodes.item(1).childNodes.item(0).SetAttributeNode NewAttribute
'//再增加一个子节点
Dim nodeChild,nodeChild2,nodeChild3
Set nodeChild = objDom.CreateElement("person")
Set nodeChild2 = objDom.CreateElement("name")
Set nodeChild3 = objDom.CreateElement("age")
nodeChild2.Text = "小邝"
nodeChild3.Text = "24"
objRoot.appendChild nodeChild
nodeChild.appendChild nodeChild2
nodeChild.appendChild nodeChild3
objDom.save(Server.MapPath("test.xml")) '更新后必须保存
%>
'//创建DOM对象
Dim objDom
Set objDom = Server.CreateObject("MicroSoft.XMLDom")
'//加载XML文件
objDom.async = false '不允许异步下载
objDom.load(Server.MapPath("test.xml"))
'//创建根节点对象
Dim objRoot
Set objRoot = objDom.documentElement
'//修改张三的姓名及性别
Dim objSub
Set objSub = objRoot.SelectSingleNode("//people").childNodes.item(0)
objSub.childNodes.item(0).text = "王五" '结合查询体会text属性的可读可写
objSub.childNodes.item(0).GetAttributeNode("sex").nodevalue = "girl"
'//给李四添加性别属性
Dim NewAttribute
Set NewAttribute = objDom.CreateNode("attribute","sex","")
NewAttribute.Text = "boy"
'不创建对象,直接添加属性
objRoot.SelectSingleNode("//people").childNodes.item(1).childNodes.item(0).SetAttributeNode NewAttribute
'//再增加一个子节点
Dim nodeChild,nodeChild2,nodeChild3
Set nodeChild = objDom.CreateElement("person")
Set nodeChild2 = objDom.CreateElement("name")
Set nodeChild3 = objDom.CreateElement("age")
nodeChild2.Text = "小邝"
nodeChild3.Text = "24"
objRoot.appendChild nodeChild
nodeChild.appendChild nodeChild2
nodeChild.appendChild nodeChild3
objDom.save(Server.MapPath("test.xml")) '更新后必须保存
%>
删除
复制内容到剪贴板
程序代码

<%
'//创建DOM对象
Dim objDom
Set objDom = Server.CreateObject("MicroSoft.XMLDom")
'//加载XML文件
objDom.async = false '不允许异步下载
objDom.load(Server.MapPath("test.xml"))
'//创建根节点对象
Dim objRoot
Set objRoot = objDom.documentElement
'//删除李四的年龄
Dim objSub,objSub2
Set objSub = objRoot.SelectSingleNode("//people").childNodes.item(1)
Set objSub2 = objSub.childNodes.item(1)
objSub.removeChild objSub2
objDom.save(Server.MapPath("test.xml")) '更新后必须保存
%>
'//创建DOM对象
Dim objDom
Set objDom = Server.CreateObject("MicroSoft.XMLDom")
'//加载XML文件
objDom.async = false '不允许异步下载
objDom.load(Server.MapPath("test.xml"))
'//创建根节点对象
Dim objRoot
Set objRoot = objDom.documentElement
'//删除李四的年龄
Dim objSub,objSub2
Set objSub = objRoot.SelectSingleNode("//people").childNodes.item(1)
Set objSub2 = objSub.childNodes.item(1)
objSub.removeChild objSub2
objDom.save(Server.MapPath("test.xml")) '更新后必须保存
%>
评论: 1 | 引用: 0 | 查看次数: 4899
发表评论
请登录后再发表评论!