0

WebページのすべてのTD要素を解析します。空のように見えるTD要素が1つあります。

EUR 1,00
EUR 2,00
empty  <--
EUR 3,00

これを修正して、arraylist(結果)から空のアイテムを削除するにはどうすればよいですか?

前もって感謝します。

私のコード:

 try {

          Document doc = Jsoup.parse(kpo);  
       // Get all td's 
          Elements waardes = doc.select("TBODY"); 
          Iterator<Element> postIt = waardes.select("td").iterator();
       // Iterator over those elements      
          //ListIterator<Element> postIt = waardes.listIterator(); 
          postIt.next();
          postIt.next();
          postIt.next();
          postIt.next();

          SearchResults sr1 = new SearchResults();
          //SearchResults sr2 = new SearchResults();

          while (postIt.hasNext()) { 

                sr1 = new SearchResults();
                // Add the game text to the ArrayList      
                sr1.setNaam(postIt.next().text()); 
                sr1.setWaarde(postIt.next().text());  
                results.add(sr1); 
          } 

          } catch (Exception e) { 
        // TODO Auto-generated catch block 
            e.printStackTrace(); 
          } 

          return results;

        } 

編集:私はそれを次のように機能させました:

while (postIt.hasNext()) {  

    String naam = postIt.next().text();
    String waarde = postIt.next().text();

    sr1 = new SearchResults();

    // Add the text to the ArrayList     
    if (!naam.trim().isEmpty() && !waarde.trim().isEmpty()) {
       sr1.setNaam(naam);
       sr1.setWaarde(waarde);
       results.add(sr1); 
    }
4

1 に答える 1

0

が空のSearchResults場合は、を追加していないことを確認してください。waardeこのようにして、後で一方と他方を掃除することをいじる必要はありません。

だから、交換してください

sr1.setWaarde(postIt.next().text());  
results.add(sr1); 

たとえば

String waarde = postIt.next().text();

if (!waarde.trim().isEmpty()) {
    sr1.setWaarde(waarde);  
    results.add(sr1);
}
于 2011-10-26T21:31:34.420 に答える