2014-02-27 67 views
1

我是Android編程中的新功能。我需要從HTML獲取值並將其顯示在列表中。 這裏是鏈接http://www.hak.hr/info/cijene-goriva/使用JSOUP解析HTML表格並將其顯示到列表視圖

- >所以我需要的值(10,41,10.51)

<div id="div_eurosuper95"> 
       <table class="nowrapper fuel_segmented"> 
       <thead> 
        <tr> 
         <th> 
          Gorivo 
         </th> 
         <th> 
          Cijena (kn) 
         </th> 
        </tr> 
       </thead> 
       <tbody> 

        <tr> 
         <td class="fuel_name"><span class="vendorName">Tifon</span></br>euroSUPER 95 BS</td> 
         <td class="fuel_segmented">10,41</td> 
        </tr> 

        <tr> 
         <td class="fuel_name"><span class="vendorName">Tifon</span></br>EUROSUPER 95 
BS CLASS</td> 
         <td class="fuel_segmented">10,51</td> 
        </tr> 

        <tr> 
         <td class="fuel_name"><span class="vendorName">Crodux derivati</span></br>EUROSUPER 95 BS</td> 
         <td class="fuel_segmented">10,41</td> 
        </tr> 


        <tr> 
         <td class="fuel_name"><span class="vendorName">AdriaOil</span></br>Euro Super 95 BS TOP</td> 
         <td class="fuel_segmented">10,51</td> 
        </tr> 

       </tbody> 
      </table> 
       </div> 
+0

這些數字是來自XML或JSON格式的網站?或者就像這些? – MDMalik

+0

有頁面源,所以你可以看到它 – SmartST

回答

0

ListView顯示您的DATAS,有good tutorial瞭解它是如何工作的。

我真的不知道你在哪裏得到這些價格,在Jsoup你有全部"Cookbooks"必要的,用例子來解析html文件。

1

您可以使用Jsoup選擇器來選擇所有類別爲fuel_segmented<td>標籤。

Document doc = Jsoup.parse(html); 
Elements fuel = doc.select("td.fuel_segmented"); 

這是一個基本的CSS選擇器語法,其中td指定標籤,以及.指定它是一類。如果它是一個具有id的特定td,則可以將其指定爲td#fuel_segmented

這將返回一個Element對象的集合,用Elements對象表示。

爲了使它更容易看到什麼是什麼,你可以遍歷元素並顯示相應的燃料名稱。

Elements fuel = doc.select("td.fuel_segmented"); 
for (Element element : fuel) { 
    System.out.println(element.previousElementSibling().text() 
    + ": " + element.text()); 
} 

將輸出

Tifon euroSUPER 95 BS: 10,41 
Tifon EUROSUPER 95 BS CLASS: 10,51 
Crodux derivati EUROSUPER 95 BS: 10,41 
AdriaOil Euro Super 95 BS TOP: 10,51 

我建議你閱讀更多關於如何使用Jsoup選擇來分析你所需要的數據。食譜的那部分可以找到here.