2011-11-03 106 views
0

我正在從Web服務,如下如何在黑莓

<topic id="2"></topic> 
<topic id="2">xxx</topic> 

響應,在分析上述拋出空指針異常。這是我的代碼解析空節點值

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

你可以張貼一些代碼?你爲什麼不把空作爲空來處理? –

+0

我添加了我的代碼 – koti

回答

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); 
} 

你還需要學習如何調試。 以及如何處理異常。 你將李爾如何解決這種東西在幾秒鐘內

0

我嘗試下面的代碼它workd

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); 
}