Xml讓人鬱悶的SelectNodes方法

2021-09-23 21:19:08 字數 860 閱讀 5961

selectnodes(xpath,namespace)方法中

無論是xmldoc.selectnodes(xpath,namespace) //假設xmldoc為根節點,整個文件下的查詢

還是xmldoc.childnodes[i].selectnodes(xpath,namespace) //節點下的查詢

兩個查詢的結果一樣:都會把整個文件符合xpath語法條件的都給查出來了

事實上我們所要的只是要在某一節點下符合xpath語法的結果

經過一鄱查詢與研究解決之道後...

發現用xmldoc.childnodes[i].clone().selectnodes(xpath,namespace)可以解決

即轉殖出一節點後,再從轉殖的節點中查詢即可找出所需要的結果

但另一問題產生了,既然查詢的結果是轉殖後出來,那就算結果節點被改變後,原來的xmldoc也不會有變化

要關聯變化,暫時的方法是遍歷xmldoc.childnodes[i],從中找出符合條件的節點,再將結果節點進行替換

總結:既然最後還要遍歷替換結果,那之前的轉殖節點查詢顯得有點就多餘了,一開始直接遍歷不就完了

結論:那在某一節點下的node.selectnodes方法還有意義麼?

selectnodes只能用在整個xml文件中查詢了!

編輯下最終答案:

今天回頭又遇到,記錄一下,正確的寫法是:

子節點.selectnodes("descendant::節點名稱",namespace)

一次讓人鬱悶的遭遇

今天是周五,2011年11月2日。剛來到公司就遭遇很鬱悶的事,我那讓人鬱悶的同事指責我寫的乙個匯出excel的程式有問題,開始我以為是程式報錯什麼的,一問才知道,程式寫的沒問題,是顯示的內容讓他看起來不爽,而我寫的方式是問過專案經理和另外乙個同事的。問他有什麼問題,他只說顯示的比較亂,必須按照什麼樣...

awk中讓人鬱悶的system 函式

發現乙個特尷尬的事實。我辛辛苦苦去資料,想用rewrite實現針對不同網域名稱源站故障後的自動跳轉功能,但整個思路裡遺漏了乙個嚴重的問題。按我的思路,針對請求的url進行一次curl,然後根據http code去改寫url或者原樣輸出 這也就意味著,每乙個請求,squid都回源去取一次header。...

遊戲設計中讓人鬱悶的事(一)

一.任務勝利條件,保護某某npc不陣亡,ai問題 一開始你離npc距離有點遠,npc的仇恨機制和敵人的仇恨機制玩命的往敵人那邊衝。二.日式rpg周目制 一些重要的資訊在某個周目觸發的,玩家還要記錄在什麼周目,去什麼地方才能達成這些資訊。乙個不留神就錯過了。三.無盡的殺怪 乙個收集的任務或者系列的任務...