2016-09-26 68 views
1

我想通過java中使用Jsoup的兩個元素進行迭代,但是,我得到一個運行時異常錯誤。看來我不能將節點類型轉換爲element.Element。Jsoup錯誤將node.element轉換爲元素。元素

我真的很感謝你的幫助,謝謝。

代碼:

Elements elements1 = doc.select("title"); 
    Elements elements2 = doc.select("link"); 

    Iterator<org.jsoup.nodes.Element> iter1 = elements1.iterator(); 
    Iterator<org.jsoup.nodes.Element> iter2 = elements2.iterator(); 

     while (iter1.hasNext() && iter2.hasNext()) { 
      Element element1 = (Element) iter1.next(); 
      System.out.print(element1); 
      Element element2 = (Element) iter2.next(); 
      System.out.print(element2); 

     } 

運行時錯誤:

java.lang.ClassCastException: org.jsoup.nodes.Element cannot be cast to javax.lang.model.element.Element 
+1

無法重現例外。你可以發佈你的進口? –

+0

Jsoup Element提供了相當多的方法來提供對許多w3c.dom.Element等效功能的訪問,爲什麼不嘗試這些方法?除非當然你試圖鬆散夫婦與JSoup – Ironluca

+0

@Ironluca你能告訴我如何做到這一點或給我一個教程的鏈接,謝謝。 –

回答

0

你可以總結一下你的代碼是這樣的:

for(org.jsoup.nodes.Element e : doc.select("title, link")) { 
    switch(e.tagName().toLowerCase()) { 
     case "title": 
     case "link": 
      System.out.print(e); 
     break; 

     default: 
      // handle unexpected element... 
    } 
}