本来想直接看sdk中的doc文档来学习android的,结果发现里面的英文资料,学起来速度有点慢,遂买了本android的教程书回来学习,刚好看到一个书里面一个使用java.net.URL访问网页的例子,之前在做采集的时候,使用了html解析器jsoup来获取页面所有链接,顺便试下把jsoup放进android中使用下,发现jsoup在android中能直接使用,测试例子代码(本文只作了简单测试):
tt.jsp页面
<%
@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" %>
<! DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd" >
< html >
< head >
< meta http-equiv ="Content-Type" content ="text/html; charset=UTF-8" >
< title >Insert title here </ title >
</ head >
< body >
测试连接
< a href ="http://www.blogjava.net/pengo/" >penngo的博客 </ a >
< a href ="http://www.blogjava.net/" >blogjava博客 </ a >
</ body >
</ html >
pageEncoding="UTF-8" %>
<! DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd" >
< html >
< head >
< meta http-equiv ="Content-Type" content ="text/html; charset=UTF-8" >
< title >Insert title here </ title >
</ head >
< body >
测试连接
< a href ="http://www.blogjava.net/pengo/" >penngo的博客 </ a >
< a href ="http://www.blogjava.net/" >blogjava博客 </ a >
</ body >
</ html >
Activity01.java
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class Activity01 extends Activity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView tv = new TextView(this);
String myString = null;
StringBuffer sff = new StringBuffer();
try
{
Document doc = Jsoup.connect("http://192.168.64.9:8099/AgentJava/tt.jsp").get();
Elements links = doc.select("a[href]");
for(Element link : links){
sff.append(link.attr("abs:href")).append(" ").append(link.text()).append("\n");
}
myString = sff.toString();
}
catch (Exception e)
{
myString = e.getMessage();
e.printStackTrace();
}
/* 将信息设置到TextView */
tv.setText(myString);
/* 将TextView显示到屏幕上 */
this.setContentView(tv);
}
}
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class Activity01 extends Activity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView tv = new TextView(this);
String myString = null;
StringBuffer sff = new StringBuffer();
try
{
Document doc = Jsoup.connect("http://192.168.64.9:8099/AgentJava/tt.jsp").get();
Elements links = doc.select("a[href]");
for(Element link : links){
sff.append(link.attr("abs:href")).append(" ").append(link.text()).append("\n");
}
myString = sff.toString();
}
catch (Exception e)
{
myString = e.getMessage();
e.printStackTrace();
}
/* 将信息设置到TextView */
tv.setText(myString);
/* 将TextView显示到屏幕上 */
this.setContentView(tv);
}
}
运行效果:
本文是在android2.2中开发测试,jsoup在android上使用和在jdk上使用是一样,不用改变代码。