用ASP读取XML文件的具体方法与示例

时间:2022-09-18 18:50:43

分别保存下面两段代码,一个保存为readxml.asp另一个保存为test.xml,放在同一个目录下面,调试程序即可,在程序里面我已经做了解释,读取代码可以做成一个readxml的函数,通过使用输入的参数而读取xml不同数据记录的不同的值。这段程序的改编来自互联网,有什么出入请见谅。

复制代码代码如下:


<% 
dim xml,objNode,objAtr,nCntChd,nCntAtr 
Set xml=Server.CreateObject("Microsoft.XMLDOM")  
xml.Async=False 
xml.Load(Server.MapPath("test.xml"))  

Set objNode=xml.documentElement 
nCntChd=objNode.ChildNodes.length-1 

'这个可以定义asp读取xml文件的那一个值,通过传递这个值来确定读取的数据 

for i=0 to nCntChd 
set objAtr=objNode.ChildNodes.item(i) 
nCntAtr=objAtr.Attributes.length-1 

'历遍一条记录里面的所有的记录项,记录是从0开始的
' http://www.zzvips.com/

for j=0 to nCntAtr 
response.write objAtr.Attributes.item(j).Text&"<br>" 
next 
response.write "<br>" 
next 

Set objAtr=Nothing 
Set objNode=Nothing  
Set xml=Nothing  
%>


xml文件

复制代码代码如下:


以下为程序代码:
<?xml version="1.0" encoding="utf-8" ?> 
<root> 
<row ID="1" COMPNAME="过桥轩" ADDR="广东省广州市越秀区北京路" 邮编="510000" TEL="8620-8333" PRODSERV="经营面" 经济行业="粥粉面店" 省份="广东省" 地市="广州市" 区域="越秀区" visit="0" 优先级="9999999999" zhuangtai="最新"/> 
<row ID="2" COMPNAME="周仔" ADDR="广东省广州市" 邮编="510000" TEL="8620-8330" PRODSERV="经营快餐饮食" 经济行业="快餐" 省份="广东省" 地市="广州市" 区域="越秀区" visit="0" 优先级="9999999999" zhuangtai="最新"/> 
<row ID="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。