XML檔案原始碼察看器(六) (轉)

amyz發表於2007-11-12
XML檔案原始碼察看器(六) (轉)[@more@]

 case 9: 'Document 節點 -- “根”節點。不需要顯示,只需顯示子節點:namespace prefix = o ns = "urn:schemas--com::office" />


 '遍歷節點的子節點就是這樣寫地 : ) ,so easy




 intCount = nodNode.childNodes.length


 if intCount > 0 then


 for intNode = 0 to intCount-1


 strNodes =strNodes & renderChildNodes(nodNode.childNodes(intNode), intLevel + 1)


 next


 end if


 case else:'普通節點


 


 strNodes=strNodes & getIndent(intLevel)& "&lt" ' 藍色 <


 strNodes=strNodes & ""& nodNode.nodeName & " " ' 褐色 node name


 


 '顯示 屬性


 set nodAttrList = nodNode.attributes'得到屬性節點集(collection -- 我最喜歡的資料型別之一)先


 intCount = nodAttrList.length 'collection 之 length ,方便吧? :)


 if intCount > 0 then


 for intAttr = 0 to intCount-1


 '紅色 屬性名,藍色 引號


 strNodes =strNodes & ""+nodAttrList(intAttr).nodeName + "=""" & nodAttrList(intAttr).nodeValue & """ "


 next


 end if




 '處理當前節點的子節點 


 intCount = nodNode.childNodes.length


 if intCount > 0 then'如果有子節點


 strNodes=strNodes & "&gt
" '屬性顯示完 ,用“ 〉“閉合 Tag先


 


 ' 對每個子節點遞迴 renderChildNodes


 for intNode = 0 to intCount-1


 strNodes = strNodes & renderChildNodes(nodNode.childNodes(intNode), intLevel + 1)


 next


 '顯示關閉標記 


 strNodes= strNodes & getIndent(intLevel) & "&lt/"+nodNode.nodeName & "&gt
"


 else


 strNodes = strNodes & "/&gt
" '沒有子節點, 顯示 “ /〉“


 end if 


 end




 renderChildNodes = strNodes


end function 



'給註釋節點著色


function renderComment(nodNode,intLevel)


 dim strNodes,intCount,intNode


 strNodes = ""


 intCount = 0


 intNode = 0


 dim nodAttrList


 strNodes=strNodes & getIndent(intLevel)& "&lt!-- "


 strNodes= strNodes & nodNode.nodeValue


 strNodes=strNodes &" --&gt
"


 renderComment = strNodes


end function




來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752019/viewspace-981934/,如需轉載,請註明出處,否則將追究法律責任。

相關文章