2012-03-22 7 views
1

Привет ребята я нахожусь пытаются напечатать вывод двух данных элементов одновременноjsoup многоэлементой выходные

Document document2 = Jsoup.parse(webPage2); 
Document document22 = Jsoup.parse(webPage2); 
Elements links2 = document2.select("a.yschttl"); 
Elements links22 = document22.select("div.abstr"); 

мы можем включать как a.yschttl и div.abstr или ...

for (Element link2 : links2) { 
out.println(link2); 
} 

мы можем включать в себя два говорят Links2 и links22 в тот же цикл ... или как для того чтобы достигнуть его ...

ответ

0

Если вы просто пытаетесь выбрать и в то же время, вы можете сделать что-то вроде этого:

for (Element link : document.select("a.yschttl, div.abstr") { 
    out.println(link); 
} 

Если вы пытаетесь сделать два выбора и вывода этих значений в тандеме, вам придется сделайте что-то вроде @vacuum, но будьте осторожны с длинными списками.

Обратите внимание, что вам не нужно разбирать документ дважды, чтобы сделать два выбора. Вы можете разобрать один раз и выбрать дважды.

+0

эй спасибо, что это сработало именно то, что я намеревался сделать ... но у меня проблема, в некоторых случаях div.abstr пуст, так как мне печатать текст, а не оставлять его пустым .... –

1

Вы можете сделать что-то вроде:

for (int i = 0; i < links2.size(); i++) { 
    out.println(links2.get(i)); 
    out.println(links22.get(i)); 
} 

Но в этом случае вы получите IndexOutOfBoundsException, если размер links22 превышает размер links2.

Чего вы хотите достичь?