2012-11-07 39 views
0

我正在使用JAXBContext解組一個XML字符串。但是如果字符串在標籤內包含'&'字符,我的代碼就會失敗。但我需要保持這樣的價值。使用JAXBContext保存字符'&'使用JAXBContext

我該怎麼做?

+1

請出示這是造成您的問題示例XML。如果你的xml包含一個未轉義的'&',它不是xml。 –

+0

感謝您的回覆。 「 Play&Boy」這是造成問題的標籤。我需要獲得Play&Boy的價值。 – Ranjith

回答

1

基於您的評論迴應你有「XML」像

<category>Play & Boy</category> 

這是 XML,因爲XML規則禁止在這個位置上使用轉義「&」的性格。

您應在源XML改變這種「XML」到

<category>Play &amp; Boy</category> 

所以它是格式良好的XML。

這是可能的,你可以編碼「&」爲「&」在預處理此非形成-格式良好的XML,但你必須寫自己,預處理代碼,並觀看了逃避「&」字符已經是編碼的一部分,如&amp;&lt;,因爲您不希望將它們轉換爲&amp;amp;&amp;lt;

如果你能做到這一點,你就要去剛開這個XML提供良好的XML的供應商更好。

+0

我知道這不是一個很好形成的字符串。我問,有什麼辦法(像任何字符串的編碼),這樣我可以解組這個字符串。 – Ranjith

+0

非常感謝您寶貴的意見Don .. :) – Ranjith

1

有你的問題分兩種情況:

  1. 之前和之後&刪除所有空間:<category>Play&Boy</category>應該工作。
  2. 更好的解決方案:<category><![CDATA[Play & Boy]]></category>將解組爲「播放&男孩」。
相關問題