XML文件源码察看器(五)

王朝other·作者佚名  2006-01-08
宽屏版  字体: |||超大  

三、ASP版源代码

<%

dim strf

strf = request("file")

dim strResult

strFilePath = Server.MapPath(strf)

'dim domXMLData As New Msxml2.FreeThreadedDOMDocument

dim domXMLData

set domXMLData = Server.CreateObject("Microsoft.XMLDOM")'As New Msxml2.DOMDocument

if strFilePath="" then

txtData.innerHTML=strFilePath+"<p><font color=""red""><b>请浏览选择需要察看的xml文件. :)</b></font> </p>"

else

domXMLData.load(strFilePath)

if (domXMLData.parseError.errorCode <> 0) then

strResult ="<p><font color=""red""><b>Invalid XML file:</b></font> " & domXMLData.parseError.reason & "</p>"

else

'递归遍历不同类型子节点,加上高亮标记 (<font color=#> </font>)

strResult = renderChildNodes(domXMLData, 0)

end if

end if

'函数名:renderChildNodes

'参数:nodNode -- xml 节点

' intLevel -- 层数,用于缩进

function renderChildNodes(nodNode, intLevel)

dim strNodes,intCount,intNode

strNodes = "" '用于显示的 html 字符串,处理的结果

intCount = 0 '循环遍历用的临时变量

intNode = 0 '循环遍历用的临时变量

dim nodAttrList '属性集

dim intNodeType

intNodeType = nodNode.nodeType

select case intnodeType

case 3: '文本节点, 黑色 粗体显示

strNodes=strNodes & getIndent(intLevel) & "<b>"& nodNode.text & "</b><br>"

case 7: '指令节点 , 调用子函数

strNodes=strNodes & renderInstruction(nodNode,intLevel)

case 8: '注释节点 , 调用子节点

strNodes=strNodes & renderComment(nodNode,intLevel)

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