遍历XML文档返回二维数组(ASP)(更新版)

原创 2005年05月12日 00:23:00

<% on error resume next
   '<![CDATA[]]>问题没处理
   'xmlfile = Server.MapPath("???.xml")
   Set xml = Server.CreateObject("MSXML.DOMDocument")
   xml.async = false
   xml.load(xmlfile)


Public Function PrettyPrint(node,tabLevel)
on error resume next
 If node.nodeName <> vbNullStrin And node.nodeName <> "#text" Then
  PrettyPrint = PrettyPrint & tabLevel & "[sp2]0[sp2]" + node.nodeName + "[sp1]"

   For Each i In node.Attributes
    pstr = pstr + i.Name + "=" + i.Value + " "
   Next
  PrettyPrint = PrettyPrint & tabLevel & "[sp2]2[sp2]" + pstr + "[sp1]"
 End If
 If node.hasChildNodes Then
  For Each childNode In node.childNodes
   tabLevel=tabLevel+1
   PrettyPrint = PrettyPrint + PrettyPrint(childNode, tabLevel)
  Next
 Else
  PrettyPrint = PrettyPrint & tabLevel-1 & "[sp2]1[sp2]" + node.Text + "[sp1]"
 End If
End Function

Public Function ShowXml(s)
on error resume next
 ta = split(s,"[sp1]")
 k = ubound(ta)-1
 'response.write "sta(" &k &",2)<p>"
 redim sta(k,2)
 for i = 0 to k
  ta2 = split(ta(i),"[sp2]")
  cs1 = ta2(0)
  cs2 = ta2(1)
  cs3 = ta2(2)
  'Response.write "sta(" & cs1 & "," & cs2 & ") = " & cs3 & "<br>"
  sta(cs1,cs2) = cs3
 Next
 ShowXml = sta
End Function

test = ShowXml(PrettyPrint(xml.documentElement,0))

   response.write "<table width=100% border=1 bgcolor=#dddddd>" + chr(13)
   response.write "<tr bgcolor=#767A7D>"
   response.write "<td>nodeName</td><td>nodeValue</td><td>Attributes</td>"
   response.write "</tr>" + chr(13)
   for b = 0 to ubound(test)
 If test(b,0)<>"" then
 response.write "<tr "
 If b=0 then response.write "bgcolor=#939495" end if
 If IsEmpty(test(b,1)) and b<>0 then response.write "bgcolor=#BABBBC" end if
 response.write ">"
 response.write "<td>" & test(b,0) & "&nbsp;</td>"
 response.write "<td>" & test(b,1) & "&nbsp;</td>"
 response.write "<td>" & test(b,2) & "&nbsp;</td>"
 response.write "</tr>" + chr(13)
 End if
   next
   response.write "</table>"

%>

 

PrettyPrint函数返回字符串

ShowXml函数处理PrettyPrint的返回值并返回一个二维数组

JNI中多维数组的处理

转自:http://developers.sun.com.cn/blog/joeys/entry/200703091 最近有朋友问到我,在JNI中,如何来处理多维Java数组,还给了我一个处理Stri...
  • zjuylok
  • zjuylok
  • 2009年05月07日 14:54
  • 6628

jquery的ajax 处理后台传来json格式的二维数组

jquery的ajax 处理后台传来json格式的二维数组  http://qqdamai.iteye.com/blog/1454383 @SuppressWarnings("unchec...
  • xyr05288
  • xyr05288
  • 2015年07月20日 15:48
  • 2519

两种遍历二维数组的方法

两种遍历二维数组的方法方法一:典型的传统方法,用二重循环,外层循环控制行,内层循环控制列i行j列的数组第ii行第jj列可以表示为arr[ii,jj]程序示例:using System;using Sy...
  • sndnnlfhvk
  • sndnnlfhvk
  • 2010年03月26日 21:54
  • 17668

mybatis调用oracle存储过程返回的二维数组(type是table的)

最近做个项目有很多的报表统计,涉及到几十张表抽取数据,形成一系列统计数据。    举个例子,比如统计一个单位不同职务级别女人数量、少数民族数量、30岁以上人员数量,40以上人员数量等。如:    董事...
  • dirful
  • dirful
  • 2013年10月19日 19:04
  • 4395

javascript二维数组遍历

script type="text/javascript" id="main"> $(function () { var resideprovince = "$residepr...
  • df282922334
  • df282922334
  • 2016年02月18日 17:34
  • 395

二维数组冒泡排序

/**二维数组冒泡排序  --作者:郴州拓职任文敏---------------------------------原始二维数组:34      1       22      528      98...
  • nimmy
  • nimmy
  • 2009年10月25日 12:38
  • 4773

5.2 Javascript:循环-二维数组

二维数组说明与一维数组相比,在用法上二维数组并没有什么不同;二维数组提供了行与 列的选择;也就是说,在一维数组里的每个值都是一组一维数组语法var arrayStr=new Array(new ar...
  • WeAreZero
  • WeAreZero
  • 2016年03月12日 17:57
  • 9441

指针遍历二维数组的三种方式

#include void func1(int p[][3], int row, int col){ //第一种遍历方式 传递 二维数组名(行指针) //通过下标遍历 简单明了 ...
  • AXuan_K
  • AXuan_K
  • 2016年07月18日 16:47
  • 2789

C#控制台基础 foreach遍历二维数组

慈心积善融学习,技术愿为有情学。善心速造多好事,前人栽树后乘凉。我今于此写经验,愿见文者得启发。 using System; using System.Collections.Gen...
  • yushaopu
  • yushaopu
  • 2016年07月30日 16:07
  • 1324

JSTL标签遍历二维数组

使用c:forEach标签输出一维数组 ${ele } days为通过request.setAttribute("days", days);放入request的一维数组,取出后...
  • liuhailiuhai12
  • liuhailiuhai12
  • 2017年04月21日 17:49
  • 1078
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:遍历XML文档返回二维数组(ASP)(更新版)
举报原因:
原因补充:

(最多只允许输入30个字)