读书人

网络开发-取得html

发布时间: 2012-06-29 15:48:47 作者: rapoo

网络开发-获得html

1:工具类

package cn.itcast.utils;import java.io.ByteArrayOutputStream;import java.io.InputStream;public class StreamTool {/** * 从输入流中获取数据 * @param inStream 输入流 * @return * @throws Exception */public static byte[] readInputStream(InputStream inStream) throws Exception{ByteArrayOutputStream outStream = new ByteArrayOutputStream();byte[] buffer = new byte[1024];int len = 0;while( (len=inStream.read(buffer)) != -1 ){outStream.write(buffer, 0, len);}inStream.close();return outStream.toByteArray();}}

?

2:业务类

package cn.itcast.service;import java.io.InputStream;import java.net.HttpURLConnection;import java.net.URL;import cn.itcast.utils.StreamTool;public class HtmlService {public static String getHtml(String path) throws Exception {URL url = new URL(path);HttpURLConnection conn = (HttpURLConnection)url.openConnection();conn.setRequestMethod("GET");conn.setConnectTimeout(5 * 1000);InputStream inStream = conn.getInputStream();//通过输入流获取html数据byte[] data = StreamTool.readInputStream(inStream);//得到html的二进制数据String html = new String(data, "gb2312");return html;}}

?

3:主Activate

package cn.itcast.html;import cn.itcast.service.HtmlService;import android.app.Activity;import android.os.Bundle;import android.util.Log;import android.widget.TextView;import android.widget.Toast;public class MainActivity extends Activity {    /** Called when the activity is first created. */    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);                TextView textView = (TextView)this.findViewById(R.id.textView);        try {         textView.setText(HtmlService.getHtml("http://www.sohu.com"));  } catch (Exception e) {   Log.e("MainActivity", e.toString());   Toast.makeText(MainActivity.this, "网络连接失败", 1).show();  }            }}

?

读书人网 >CSS

热点推荐