Java 跳过标记属性中的Html内容

Java 跳过标记属性中的Html内容,java,saxparser,Java,Saxparser,我正在使用SAX解析器解析以下带有“Description”属性的数据段,该属性包含HTML内容。但是我得到一个错误“与元素类型“null”关联的属性“Description”的值不能包含“我真的认为你应该看看这篇文章(),看看其他人建议如何解决这个问题。没有XML解析器可以解析这个数据,因为数据不符合XML格式。请参阅 有两种方法可以解决此问题: 更改源格式 更改源以创建正确的XML。您可以通过使用以下内容转义字符来包括HTML: " " ' ' &

我正在使用SAX解析器解析以下带有“Description”属性的数据段,该属性包含HTML内容。但是我得到一个错误“与元素类型“null”关联的属性“Description”的值不能包含“我真的认为你应该看看这篇文章(),看看其他人建议如何解决这个问题。

没有XML解析器可以解析这个数据,因为数据不符合XML格式。请参阅

有两种方法可以解决此问题:

  • 更改源格式
  • 更改源以创建正确的XML。您可以通过使用以下内容转义字符来包括HTML:

    "   "
    '   '
    <   &lt;
    >   &gt;
    &   &amp;
    
    “”
    “&apos;
    <   
    >   
    &&;
    
  • 改变目标算法
  • 第二种方法是为您的案例创建自己的解析算法


    通常答案总是第一个。

    您必须在描述中转义HTML及其XML控制字符(
    ,和
    ),或者不包含它,因为它通过包含类似XML的数据破坏了XML结构。解析器看到
    Description=“XML无论如何都是坏的。你不应该试图让解析器“忽略”坏的XML-你应该首先修复产生坏XML的任何东西。例如,你问的是“我如何撬出我体内的这些子弹”,而不是“我如何停止被枪杀”。
    
    "   &quot;
    '   &apos;
    <   &lt;
    >   &gt;
    &   &amp;