0

以下に、JDOM 2.0.5 で解析している xml があります。

<?xml version=\"1.0\" encoding=\"UTF-8\"?><order><BGP1>true</BGP1><BGP2>Metro_C&amp;amp;C</BGP2></order>

node.getValue() を使用してタグの値を取得しようとしているときに、ノードが Element タイプである場合、ノードの値が次のように返されます。

Metro_C&amp;C and not Metro_C&amp;amp;C

これを解決する方法はありますか?

4

1 に答える 1

2

振る舞いは正しく、あなたの期待は間違っています。ノードのテキスト値は ですMetro_C&amp;C。これを XML としてエンコードする場合、この文字はXML にとって特別な意味を持つため、&に置き換える必要があります。&amp;

しかし、私の感覚では、入力データはすでに破損しています。テキスト値はMetro_C&C、XML エンコードされた値の を与えるものであるはずですMetro_C&amp;C。のようなパターンamp;amp;は、誰かがデータを 2 回エンコードしたことを示唆しています。

于 2015-01-14T09:03:47.020 に答える