如何解析XML

时间:2012-11-06 09:34:00

标签: java xml xml-parsing

以下是我要解析的XML:

"<Result>"
+ "<columnName><![CDATA[Role_Id]]></columnName>"
+ "<Row><col><![CDATA[0]]></col><col><![CDATA[zero]]></col></Row>"
+ "<Row><col><![CDATA[1]]></col><col><![CDATA[one]]></col></Row>"
+ "<Row><col><![CDATA[2]]></col><col><![CDATA[two]]></col></Row>" + "</Result>";

我想要以下输出:

0,zero
1,one
2,two

但是当我试图解析它时,我得到了

0 1 2

4 个答案:

答案 0 :(得分:3)

你可以尝试使用JAX-B,它应该很容易做到。

JAX-B的“hello world”示例:http://www.mkyong.com/java/jaxb-hello-world-example/

答案 1 :(得分:0)

使用DOM,JDOM,SAX等库。互联网上有许多教程可供选择。

答案 2 :(得分:0)

想到XSLT:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="text" />
    <xsl:template match="/Result">
        <xsl:apply-templates select="Row"/>
    </xsl:template>

    <xsl:template match="Row">
        <xsl:value-of select="col[1]"/>,<xsl:value-of select="col[2]" />
        <xsl:text>&#10;</xsl:text>
    </xsl:template>
</xsl:stylesheet>

答案 3 :(得分:-1)

XSLT的另一种替代方案是SLAX。语法在眼睛上要好得多,写起来也更有趣:

libslax