我收到来自网络服务的回复,如下所示
<topic id="2"></topic>
<topic id="2">xxx</topic>
在解析上面时抛出Null指针异常。这是我的代码
speakersnode=speaker.getElementsByTagName("speaker");
for(int k=0;k<speakersnode.getLength();k++)
{
ids.addElement(((Element)speakersnode.item(k)).getAttribute("id"));
System.out.println("speaker "+speakersnode.item(k).getFirstChild().getNodeValue());
vspeakers.addElement(speakersnode.item(k).getFirstChild().getNodeValue());
}
我该如何解决这个问题。
答案 0 :(得分:1)
试试这个:
speakersnode=speaker.getElementsByTagName("speaker");
for(int k=0;k<speakersnode.getLength();k++)
{
ids.addElement(((Element)speakersnode.item(k)).getAttribute("id"));
String info = speakersnode.item(k).getFirstChild().getNodeValue();
if (info == null){
info = "";
}
System.out.println("speaker "+ info );
vspeakers.addElement(info);
}
您还需要学习如何调试。 以及如何处理异常。 您将在几秒钟内学会如何修复此类内容
答案 1 :(得分:0)
我尝试了以下代码
speakersnode=speaker.getElementsByTagName("speaker");
for(int k=0;k<speakersnode.getLength();k++)
{
String info;
ids.addElement(((Element)speakersnode.item(k)).getAttribute("id"));
try{
info = speakersnode.item(k).getFirstChild().getNodeValue();
}catch(NullPointerException e){info="";}
vspeakers.addElement(info);
}