2016-09-26 5 views
1

Jsoupを使用してJavaの2つの要素を反復処理しようとしていますが、実行時例外エラーが発生します。私はnodes.Elementをelement.Elementにキャストできないようです。Jsoupがelement.elementに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... 
    } 
} 
関連する問題