首先,这里我们用到了访问网络的权限,故要在清单文件中加入下列代码
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
然后,根据http协议,要访问服务器上的某个网页,必须先建立一个连接,连接的参数为一个URL
URL url=new URL(“http://www.baidu.com”);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
然后, //设置请求方式为GET方式,就是相当于浏览器打开百度网页
connection.setRequestMethod("GET");
接着设置超时时间为5秒,5秒内若连接不上,则通知用户网络连接有问题
connection.setReadTimeout(5000);
若连接上之后,得到网络的输入流,内容就是网页源码的字节码
InputStream inStream= connection.getInputStream();
必须将其转换为字符串才能够正确的显示给用户
ByteArrayOutputStream data=new ByteArrayOutputStream();//新建一字节数组输出流
byte[] buffer = new byte[1024];//在内存中开辟一段缓冲区,接受网络输入流
int len=0;
while((len=inStream.read(buffer))!=-1){
data.write(buffer, 0, len); //缓冲区满了之后将缓冲区的内容写到输出流
}
inStream.close();
return new String(data.toByteArray();,”utf-8”);//最后可以将得到的输出流转成utf-8编码的字符串,便可进一步处理