首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >检索为空的XML值

检索为空的XML值
EN

Stack Overflow用户
提问于 2014-05-15 01:18:11
回答 1查看 50关注 0票数 0

我有一个用java阅读的xml文档,一切都很好,直到我看到一个带有空标签的记录。第一行返回正常,第二行没有设置可用性,应用程序出现以下错误:

代码语言:javascript
复制
java.lang.NullPointerException
        at tableDisplay.tableApplication.getValue(tableApplication.java:156)

我试着把支票打成这样

代码语言:javascript
复制
 if(node.getNodeValue() == null)
     return "";
 else
    return node.getNodeValue();

但这似乎也行不通。这里我漏掉了什么?

代码语言:javascript
复制
<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

     }  
EN

回答 1

Stack Overflow用户

发布于 2014-05-15 01:34:51

通过在第156行执行return element.getElementsByTagName(tag).item(0).getTextContent();解决了此问题。然后,elswhere,如果我需要将该字符串转换为int/long/etc,我会检查它是否等于"";

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23661116

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档