我有一个包含CDATA部分的XMl,其中包含嵌套的CDATA部分。在这种情况下,如何进行解组。这在Java中可行吗? 提前谢谢。
答案 0 :(得分:0)
您正在寻找JAXB框架。 JAXB代表用于XML绑定的Java体系结构。
JAXB object has the capability of Marshaling and UnMarshaling.
这并不复杂。去吧:))
根据您的问题,
你可以通过拥有多级类结构来实现。 对于Eg:
假设您有两个类:
class A
{
(@xmlName : CDATA1)
B obj;
}
class B
{
(@xmlName : CDATA2)
String string;
}
当你在A类对象的上下文中解组时。
内部CDATA将会出现在string
的{{1}}成员中。
希望这有帮助。
答案 1 :(得分:0)
不,不可能解组此类文档,因为该文档无效。例如:
<?xml version="1.0" ?>
<foo>
<bar><![CDATA[This should contain a nested cdata, which <![CDATA[Contains another CDATA]]>]]></bar>
</foo>
无法解析,因为字符序列]]>
只能用于标记CDATA
部分的结尾。简而言之,您无法嵌套CDATA
个部分。你必须找出另一种方法。
有关详细信息,请参阅wikipedia article和this question and answers。