asp读取xml

  有tree.xml文件如下:

  <?xml version="1.0" encoding="utf-8" ?>
<CategoryTree>
    <Category parentid="0">
        <id>1</id>
        <title>ASP.NET</title>
        <url></url>
        <addtime>2008-7-6</addtime>
    </Category>
    <Category parentid="1">
        <id>2</id>
        <title>GridView</title>
        <url>http://www.asp.net</url>
        <addtime>2008-7-6</addtime>
    </Category>
    <Category parentid="1">
        <id>3</id>
        <title>DataList</title>
        <url>http://www.codefans.net</url>
        <addtime>2008-7-6</addtime>
    </Category>
    <Category parentid="1">
        <id>4</id>
        <title>ListView</title>
        <url>http://www.codeproject.com</url>
        <addtime>2008-7-6</addtime>
    </Category>
    <Category parentid="1">
        <id>5</id>
        <title>Reapter</title>
        <url>http://baidu.com</url>
        <addtime>2008-7-6</addtime>
    </Category>
    <Category parentid="0">
        <id>6</id>
        <title>Create Code</title>
        <url></url>
        <addtime>2008-7-6</addtime>
    </Category>
    <Category parentid="6">
        <id>7</id>
        <title>生成细线表格</title>
        <url>http://www.codefans.net</url>
        <addtime>2008-7-6</addtime>
    </Category>
    <Category parentid="6">
        <id>8</id>
        <title>生成GridView</title>
        <url>http://www.codefans.net</url>
        <addtime>2008-7-6</addtime>
    </Category>
 <Category parentid="6">
  <id>9</id>
  <title>生成细线表格</title>
  <url>http://www.codefans.net</url>
  <addtime>2008-7-6</addtime>
 </Category>
 <Category parentid="6">
  <id>10</id>
  <title>生成GridView</title>
  <url>http://www.codefans.net</url>
  <addtime>2008-7-6</addtime>
 </Category>
 <Category parentid="6">
  <id>13</id>
  <title>生成细线表格</title>
  <url>http://www.codefans.net</url>
  <addtime>2008-7-6</addtime>
 </Category>
 <Category parentid="6">
  <id>14</id>
  <title>生成GridView</title>
  <url>http://www.codefans.net</url>
  <addtime>2008-7-6</addtime>
 </Category>
 <Category parentid="6">
  <id>11</id>
  <title>生成细线表格</title>
  <url>http://www.codefans.net</url>
  <addtime>2008-7-6</addtime>
 </Category>
 <Category parentid="6">
  <id>12</id>
  <title>生成GridView</title>
  <url>http://www.codefans.net</url>
  <addtime>2008-7-6</addtime>
 </Category>
 <Category parentid="6">
  <id>15</id>
  <title>生成细线表格</title>
  <url>http://www.codefans.net</url>
  <addtime>2008-7-6</addtime>
 </Category>
 <Category parentid="6">
  <id>16</id>
  <title>生成GridView</title>
  <url>http://www.codefans.net</url>
  <addtime>2008-7-6</addtime>
 </Category>
</CategoryTree>

  

  有xmlread.asp文件如下:

  

<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>

<%
 dim xml,objNode,objAtr,nCntChd,nCntAtr,nCntNd,xmlStr
 Set xml=Server.CreateObject("Microsoft.XMLDOM") 
 xml.Async=False
 
 '一个xml文件相当于一个数据表,xml的根节点相当于数据表的名称
 xml.Load(Server.MapPath("tree.xml")) 
 
 '获取xml文件中各个一级节点,一级节点相当于数据表中的记录
 Set objNode=xml.documentElement
 '获取一级节点个数,即数据表中的记录数
 nCntChd=objNode.ChildNodes.length-1
 
 '遍历各个一级节点,即遍历各个记录
 for i=0 to nCntChd
  set objAtr=objNode.ChildNodes.item(i) '获取根节点下第i个一级节点,即获取数据表中的第i条记录
  
  nCntAtr=objAtr.Attributes.length-1 '获取一级节点的属性个数
  '历遍一条记录里面的所有属性项项,属性索引从0开始
  for j=0 to nCntAtr
   xmlStr = xmlStr & objAtr.Attributes.item(j).nodeName & ":" '读取节点属性名称
   xmlStr = xmlStr & objAtr.Attributes.item(j).Text & "&nbsp;" '读取节点属性值
  next
  
  xmlStr = xmlStr & "<br>"
  
  nCntNd=objAtr.ChildNodes.length-1 '获取当前一级节点的子节点数目
  for k = 0 to nCntNd
   xmlStr = xmlStr & "<br>&nbsp;&nbsp;&nbsp;&nbsp;" & objAtr.ChildNodes.item(k).nodeName & ":" '读取节点名
   xmlStr = xmlStr & objAtr.ChildNodes.item(k).Text '读取节点数值
  next
  
  xmlStr = xmlStr & "<br>"
 next 

 
 response.Write(xmlStr)
 
 Set objAtr=Nothing
 Set objNode=Nothing 
 Set xml=Nothing 
%>

 

 

posted @ 2010-05-29 15:54  弹着钢琴设计  阅读(450)  评论(0编辑  收藏  举报