分别保存下面两段代码,一个保存为readxml.asp另一个保存为test.xml,放在同一个目录下面,调试程序即可,在程序里面我已经做了解释,读取代码可以做成一个readxml的函数,通过使用输入的参数而读取xml不同数据记录的不同的值。这段程序的改编来自互联网,有什么出入请见谅。
复制代码 代码如下:
<%
dimxml,objNode,objAtr,nCntChd,nCntAtr
Setxml=Server.CreateObject("Microsoft.XMLDOM")
xml.Async=False
xml.Load(Server.MapPath("test.xml"))
SetobjNode=xml.documentElement
nCntChd=objNode.ChildNodes.length-1
'这个可以定义asp读取xml文件的那一个值,通过传递这个值来确定读取的数据
fori=0tonCntChd
setobjAtr=objNode.ChildNodes.item(i)
nCntAtr=objAtr.Attributes.length-1
'历遍一条记录里面的所有的记录项,记录是从0开始的
'http://www.knowsky.com/
forj=0tonCntAtr
response.writeobjAtr.Attributes.item(j).Text&"<br>"
next
response.write"<br>"
next
SetobjAtr=Nothing
SetobjNode=Nothing
Setxml=Nothing
%>
xml文件
复制代码 代码如下:
以下为程序代码:
<?xmlversion="1.0"encoding="utf-8"?>
<root>
<rowID="1"COMPNAME="过桥轩"ADDR="广东省广州市越秀区北京路"邮编="510000"TEL="8620-8333"PRODSERV="经营面"经济行业="粥粉面店"省份="广东省"地市="广州市"区域="越秀区"visit="0"优先级="9999999999"zhuangtai="最新"/>
<rowID="2"COMPNAME="周仔"ADDR="广东省广州市"邮编="510000"TEL="8620-8330"PRODSERV="经营快餐饮食"经济行业="快餐"省份="广东省"地市="广州市"区域="越秀区"visit="0"优先级="9999999999"zhuangtai="最新"/>
<rowID="3"COMPNAME="香菜馆"ADDR="广东省广州市越秀区"邮编="510000"TEL="8620-837"PRODSERV="经营湘菜"经济行业="湘菜"省份="广东省"地市="广州市"区域="越秀区"visit="0"优先级="9999999999"zhuangtai="最新"/>
</root>
DOM的对象和方法的简略说明:
documentElement属性确认XML文件的根(Root)节点。
selectSingleNode传回第一个符合样式的节点。
loadXML方法加载一个XML文件或字符串的片断。
haschildnodes方法如果指定的节点有一个或更多子节点,传回值为true。
createElement方法建立一个指定名称的元素。
AppendChild方法加上一个节点当作指定节点最后的子节点。
createCDATASection方法建立一个包含特定数据的CDATA。