Sax解析器:在子标记下面获取tagcontent

时间:2017-04-25 10:01:43

标签: java sax

有没有办法从以下xml标记(类别)获取CDATA标记内容:

 <category>
    <h1>Some data</h1>
    <![CDATA[<br> some data ...]]>
    <h1>Some data</h1>
    <![CDATA[<br> more data ...]]> 
</category>

在某种程度上,字符方法是否只能获取类别标记内的内容,但是在h1标记之外?

由于

1 个答案:

答案 0 :(得分:0)

  1. 覆盖DefaultHandler2实施中的startCDATA()endCDATA()方法。

    DefaultHandler2 handler2 = new DefaultHandler2() { /* ... */ }
    
  2. 配置XMLReader

    SAXParser saxParser = SAXParserFactory.newInstance().newSAXParser();
    XMLReader xmlReader = saxParser.getXMLReader();
    xmlReader.setProperty("http://xml.org/sax/properties/lexical-handler", handler2);
    
  3. 开始解析

    saxParser.parse( /* input source */, handler2);