Jsoup库,试图制作一个从HTML网站读取数据的Android应用程序

时间:2012-02-15 16:25:21

标签: java android

我面临的问题是我无法解决它一整天:S, 顺便问题是当我尝试解析一个html网站并且如果该html网站中有数据它工作正常,但是当没有数据时,它会挂起并在我的LogCat中显示错误,其中它表示NullPointer,对于ex :这里我们有两个链接,一个有数据,另一个没有数据:

第一个链接:http://wap.nastabuss.se/its4wap/QueryForm.aspx?hpl=Resecentrum+(V%C3%A4xj%C3%B6) 第二个链接:http://wap.nastabuss.se/its4wap/QueryForm.aspx?hpl=Ulfsn%C3%A4s+(Hallands+l%C3%A4n

因此,当我尝试显示第二个链接为空的数据时,错误显示在这里。

        Element table = doc.select("table[class=tableMenuCell]").first();
    Iterator<Element> ite = table.select("td[align=right]").iterator();
    Iterator<Element> destinacions = table.select("td[align=left]").iterator();

这些行之后的其余代码只是while语句,我在arraylist中添加数据,当该链接上有数据时,该数据正常工作。

在midle行代码中,“ite”行显示错误。

那么如何制作任何if语句或smth来检查该站点中是否根本没有数据不检查,只是为了使某些msgbox没有数据。

感谢名单, 如果有人可以帮我这个案子,我真的很感激。

1 个答案:

答案 0 :(得分:0)

您需要检查not null

if(table != null) 
{ 
Iterator<Element> ite = table.select("td[align=right]").iterator();
 Iterator<Element> destinacions = table.select("td[align=left]").iterator();
 }

因为你的第二个链接没有数据,你的表为null,所以null上的任何操作都会抛出nullpointer异常