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

王朝c#·作者佚名  2006-12-17
窄屏简体版  字體: |||超大  

<% 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- 王朝網路 版權所有 導航