第一次接触安卓Jsoup解析,感觉好神奇啊!
主要涉及的技术
1.jar包的导入
2.html的解析,其实挺好玩的!
3.listView的绑定。
把涉及的代码发过来
package com.android.web;
import java.io.BufferedInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apache.http.util.ByteArrayBuffer;
import org.apache.http.util.EncodingUtils;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import android.R.anim;
import android.R.menu;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.Toast;
public class _GetWebResoureActivity extends Activity {
Document doc;
List<Map<String, String>> list1 = new ArrayList<Map<String, String>>();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button bt1=(Button)findViewById(R.id.button1);
bt1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
try {
doc = Jsoup.connect("http://cst2.jlnu.edu.cn/acm/").get();
String title = doc.title();
Toast toast=Toast.makeText(getApplicationContext(), title, Toast.LENGTH_SHORT);
toast.show();
Element div = doc.getElementById("menu");
Elements links = div.getElementsByTag("a");
for (Element link : links) {
Map<String, String> map = new HashMap<String, String>();
String linkHref = link.attr("href");
String linkText = link.text();
map.put("title",linkText);
map.put("href", "http://cst2.jlnu.edu.cn/acm/"+linkHref);
list1.add(map);
// System.out.println("http://cst2.jlnu.edu.cn/acm/"+linkHref);
}
ListView listView = (ListView) findViewById(R.id.list1);
listView.setAdapter(new SimpleAdapter(_GetWebResoureActivity.this, list1, R.layout.web,
new String[] { "title","href" }, new int[] {
R.id.tx1,R.id.tx2
}));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
}
}