簡體   English   中英

如何禁用java節點的特殊字符轉義

[英]How to disable special character escaping of a java Node

我有一個函數,我在其中創建一個Node並將textContent設置為特殊字符,例如項目符號(•)。 此函數在xsl:apply-templates中調用。 但是,輸出會逃脫特殊的特征而不是看到子彈,•出現在我的結果上。 做了一些研究后,我沒有找到任何方法來禁止從我的節點轉義。 我的論文是創建的Node是一個CDATA部分,但我怎樣才能恢復呢?

這是我用來創建節點的代碼:

DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();                
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();                
Document doc = docBuilder.newDocument();
result = doc.createElement("doesntmatter");   
result.setTextContent("•");

謝謝你的幫助 :)

編輯:像xslt中的disable-output-escaping,但對於java元素/節點應該可以做到這一點

問題是您正在使用setTextContent但隨后提供轉義版本 - 您應該讓API執行轉義。 您當前正在嘗試將節點的文本內容設置為字面上的"•" - 不是子彈。 你可能只想要:

result.setTextContent("\u2022");

指定內容應該是U + 2022(項目符號) ,它是十進制的代碼點8226。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM