使用jsoup时如何组织提取的值?

时间:2013-02-25 01:41:09

标签: android json parsing hashmap jsoup

你们如何以易于阅读的方式存储使用jsoup提取的值?所以,如果你有像下面这样的HTML代码。

<td width="200">country1 </td>
<a href="http://example1.com"></a>
<td width="200">country2 </td>
<a href="http://example2.com"></a>
<td width="200">country3 </td>
<a href="http://example3.com"></a>

我想为每个人保存国家/地区 href链接,之后我们可以轻松阅读它们。我的方式,我有两个ListViews 一个国家和一个href链接。如果用户选择例如country2,我找到它的索引,然后使用它从另一个ListView获取href链接。我觉得这种方法不好,你们是怎么做到的?

这是我的jsoup代码,以防它需要更多的改进。

try {
                doc = Jsoup.connect("http://somesite.com").get();

                // Here to get the names inside tag a
                Elements links = doc.select("a");
                for (Element el : links) {

                    links = el.ownText();

                    //Save all the links into String Array. 
                    array_link.add(links);
                    }

                //Here to get the names inside tag td
                Elements linktwo = doc.select("td");
                    for (Element eltwo : linktwo) {

                        linkText = eltwo.ownText();

                        //Save the countries to String Array 
                        array_countries.add(linkText);
                        }


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

谢谢!

2 个答案:

答案 0 :(得分:0)

你可以使用字符串解析来提取值......!
试试这个链接How to process the wsdl returned value

希望你明白了

答案 1 :(得分:0)

这是你想要的吗?

try {
                Document doc = Jsoup.connect("http://somesite.com").get();

                // Here to get the names inside tag a
                Elements links = doc.select("a");
                Elements linktwo = doc.select("td");
                String eltwo = null;

                int i = 0;
                for (Element el : links) {

                    eltwo = linktwo.get(i).text();

                    //Save all the links into String Array. 
                    array_link.add(el.text());
                    array_countries.add(eltwo);

                    i++;
                    }


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