我正在使用JAXBContext来解组XML字符串。但是如果字符串包含'&',我的代码就会失败标签内的字符。但我需要保持这样的价值。
我该怎么做?
答案 0 :(得分:1)
根据您的评论回复,您有“xml”,如
<category>Play & Boy</category>
这是不是 xml,因为xml规则禁止使用未转义的'&amp;'这个位置上的角色。
您应该将此类“xml”更改为
<category>Play & Boy</category>
在源xml中,以便它是格式良好的xml。
你可以编码“&amp;”作为“&amp;”在这个非格式良好的xml的预处理器中,你必须自己编写预处理代码,并注意转义'&amp;'已经属于编码的字符,例如&
或<
,因为您不希望将它们转换为&amp;
和&lt;
。
如果你能做到这一点,那么最好让这个xml的供应商提供格式良好的xml。
答案 1 :(得分:1)
您的问题有两种可能性:
<category>Play&Boy</category>
之前和之后的所有空格应该有用。<category><![CDATA[Play & Boy]]></category>
将被解组为“Play&amp; Boy”。