检索空的XML值

时间:2014-05-14 17:18:11

标签: java xml

我有一个xml doc我正在读java,一切都很好,直到我得到一个空标记的记录。第一行返回正常,它是第二行,其中未设置可用性,应用程序错误输出以下内容:

java.lang.NullPointerException
        at tableDisplay.tableApplication.getValue(tableApplication.java:156)

我试过像

那样的支票
 if(node.getNodeValue() == null)
     return "";
 else
    return node.getNodeValue();

但这似乎也不起作用。我在这里缺少什么?

<DATA>
        <ROW>
                <Id>a0550000008zYHPAA2</CertId>
                <AddonId>a0550000008zYHPAA2</AddonId>
                <CareSetting>Office</CareSetting>
                <Usability>4</Usability>
        </ROW>
        <ROW>
                <Id>a0550000008zYHPAA2</CertId>
                <AddonId>a0550000008zYHPAA2</AddonId>
                <CareSetting>Office</CareSetting>
                <Usability></Usability>
        </ROW>
</DATA>


     private static String getValue(String tag, Element element) {
         NodeList nodes = element.getElementsByTagName(tag).item(0).getChildNodes();
         Node node = (Node) nodes.item(0);


        return node.getNodeValue();  // line 156

     }  

1 个答案:

答案 0 :(得分:0)

通过返回element.getElementsByTagName(tag).item(0).getTextContent();来解决它。然后,elswhere,如果我需要将该字符串转换为int / long / etc,我检查它是否等于“”;