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

王朝asp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

<% on error resume next

'<![CDATA[]]>问题没处理

'xmlfile = "???.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的返回值并返回一个二维数组

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航