JAXBContext を使用して XML 文字列をアンマーシャリングしています。しかし、文字列のタグ内に「&」文字が含まれていると、コードが失敗します。しかし、その値をそのまま保持する必要があります。
これどうやってするの?
JAXBContext を使用して XML 文字列をアンマーシャリングしています。しかし、文字列のタグ内に「&」文字が含まれていると、コードが失敗します。しかし、その値をそのまま保持する必要があります。
これどうやってするの?
コメントの応答に基づいて、「xml」のようなものがあります
<category>Play & Boy</category>
これはxml ではありません。xml の規則では、この位置にエスケープされていない「&」文字を使用することは禁止されています。
そのような「xml」を次のように変更する必要があります
<category>Play & Boy</category>
ソース xml で、整形式の xml になるようにします。
この整形式でない xml のプリプロセッサで「&」を「&」としてエンコードすることは可能ですが、その前処理コードを自分で記述し、既に一部である「&」文字をエスケープすることに注意する必要があります。&
またはなどのエンコーディングの 、および<
に変換したくないためです。&amp;
&lt;
それができるのであれば、この xml のサプライヤーに整形式の xml を提供してもらうほうがよいでしょう。
あなたの質問には2つの可能性があります:
<category>Play&Boy</category>
うまくいくはずです。<category><![CDATA[Play & Boy]]></category>
「Play & Boy」としてアンマーシャリングされます。