有沒有人有一個想法如何找出一個元素是否包含<![CDATA[ text ]]>
?我通過dom4j API和Jaxen進行搜索,但我找不到如何做到這一點......如果我檢索文本,它將裁剪掉cdata包裝。如何使用Dom4j測試元素的CDATA值?
0
A
回答
0
技術上你仍然可以這樣做。
public boolean isCDATA(org.dom4j.Node node) {
for (org.dom4j.Node n : node.content()) {
if (org.w3c.dom.Node.CDATA_SECTION_NODE == n.getNodeType()) {
return true;
}
}
return false;
}
0
http://dom4j.sourceforge.net/dom4j-1.6.1/apidocs/org/dom4j/Node.html#getNodeType%28%29
這項工作?
public short getNodeType()
根據節點類型返回代碼。這使得處理節點的多態性變得容易得多,因爲可以使用switch語句而不是多個if(instanceof)語句。
返回:
Node.asXML()
其值由任何未修飾的返回整個元件:如ELEMENT_NODE節點類型,例如或ATTRIBUTE_NODE
+0
你問我:-)?它不會,它返回元素的類型...我關心它的值 – lisak
+0
您可以使用它,但它必須與content()方法結合使用。 –
1
的方法,一個W3C DOM complient代碼。
所以,如果您有:
<nodes>
<node><![CDATA[value]]></node>
</nodes>
調用文本方法將返回 「值」,但調用 「asXML()」 將返回:
<node><![CDATA[value]]></node>
從那裏,我想你可以對CDATA標籤進行字符串搜索。
相關問題
- 1. NoClassDefFoundError:org/dom4j /元素
- 2. DOM4J:更換元素
- 3. dom4j cdata(保留空格)
- 4. dom4J:如何獲得Node的元素的值?
- 5. 閱讀xml沒有cdata的元素值?
- 6. 如何使用Groovy DOMBuilder在CDML中使用CDATA查找元素?
- 7. 的xsl:使用CDATA段元素的輸出,不封裝針對性的CDATA標記CDATA段元素
- 8. 使用結尾的元素測試字段的值使用
- 9. 如何編寫單元測試來聲明jQuery元素的值
- 10. 使用DTD將元素定義爲CDATA?
- 11. 的xsl:內部XSL CDATA元素:元素
- 12. 用DOM4J讀取XML元素內容
- 13. dom4j - 無法從xml獲取cdata
- 14. 如何測試System.Array中的空元素
- 15. 孫子元素的XPath測試值?
- 16. 如何使用CDATA創建XML :: TreeBuilder元素?
- 17. 使用正則表達式來包裝xml元素值與cdata
- 18. 用Jython和dom4j可以在元素之間添加元素嗎?
- 19. 如何使用jasmine測試帶有DOM元素的JavaScript?
- 20. 使用dom4j的
- 21. 如何使用jmockit做單元測試單元測試
- 22. Android:單元測試:如何使用SensorManager創建單元測試?
- 23. 用jQuery-Chai測試元素
- 24. 使用Selenium IDE測試元素高度
- 25. 如何對齊測試元素旁邊的流程元素?
- 26. XSLT:如何處理測試元素的值?
- 27. HTML元素測試?
- 28. Java測試元素
- 29. 使用dom4J啓用打開和關閉空元素標籤
- 30. 強制清空CDATA元素
你是對的,但它必須是元素,因爲該方法在AbstractBranch類中。 – lisak