我從rss-feed中讀取CDATA部分的元素,我需要將其轉換爲有效的xml。 CDATA部分中的內容大部分都是有效的xhtml,但有些時候像&符號這樣的字符出現在屬性(url)中。轉義java中的xml字符串
我可以使用.replaceAll("&", "&")
來解決這個問題,但考慮一下,可能會出現其他無效字符出現在屬性或文本中。
我正在導入元素的CMS不會接受CDATA節而不設置內容的其他配置,所以我的問題是:是否有任何簡單的方法來轉義字符串,僅用於屬性和文本?
我使用jdom庫來處理導入後的xml。
編輯:我檢查了Apache的StringEscapeUtils,但這是逃避整個字符串。我需要的東西只能轉義屬性值和元素內的文本。
'.replaceAll( 「&」, 「&」)'會搞亂任何現有的HTML實體。例如。 '<'會變成'& lt;'。 –
看到此鏈接 http://stackoverflow.com/questions/599634/convert-html-character-back-to-text-using-java-standard-library –
這是真的爲好,鄧肯。該StringEscapeUtils將轉義整個字符串,並不完全是我正在尋找。 – Karine