如何解析CDATA
<?xml version="1.0" encoding="gb2312" ?>
- <rss version="2.0">
- <channel>
- <item>
- <description>
- <![CDATA[
油价格仍低于其发行价,市场预期其将继续增持。加上目前油价反弹有所趋缓,且市场传言国内近期将再次上调成品油定价,中石油本周表现抢眼,日k线走出v型反转走势。若今日内地股市走稳,香港中石油有望冲击9港元大关,如投资者看好中石油...
]]>
</description>
</item>
</channel>
</rss>
这是我的一个XML 我想解析出CDATA中的内容 尝试了很多方法 都取不出来的 都是NULL 望高手给给小程序解决这个问题 万分感谢
[解决办法]
你用什么解析的~?怎么解析的?
CDATA只表示中间是一段完整的片段,不受一些特殊符号的影响,没别的作用,直接获取description的值应该就可以了
[解决办法]
public static void main(String[] args) throws Exception { DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); DocumentBuilder db = dbf.newDocumentBuilder(); Document doc = db.parse(new FileInputStream("C:\\q.xml")); Element e = doc.getDocumentElement(); printChildNodes(e.getChildNodes()); } public static void printChildNodes(NodeList list) { for (int i = 0; i < list.getLength(); i++) { Node n = list.item(i); System.out.println(n.getNodeName() + " : " + n.getNodeValue()); printChildNodes(n.getChildNodes()); } }