Android通过访问网页查看网页源码实例详解
作者:lqh 发布时间:2023-10-05 03:09:11
标签:Android,网页源码
Android通过访问网页查看网页源码
1.添加网络权限
<!--访问网络的权限-->
<uses-permission android:name="android.permission.INTERNET"/>
2.获取网络中网页的数据
/**
* 获取网页HTML源代码
* @param path 网页路径
*/
public static String getHtml(String path) throws Exception {
URL url=new URL(path);
HttpURLConnection conn=(HttpURLConnection)url.openConnection();
conn.setConnectTimeout(5000);
conn.setRequestMethod("GET");
if(conn.getResponseCode()==200){
InputStream inStream=conn.getInputStream();
byte[] data=read(inStream);
String html=new String(data,"UTF-8");
return html;
}
return null;
}
/**
* 读取流中的数据
*/
public static byte[] read(InputStream inputStream) throws IOException {
ByteArrayOutputStream outputStream=new ByteArrayOutputStream();
byte[] b=new byte[1024];
int len=0;
while((len=inputStream.read(b))!=-1){
outputStream.write(b);
}
inputStream.close();
return outputStream.toByteArray();
}
3.处理查看网页源码的控制
public class HtmlViewActivity extends Activity {
private EditText pathText;
private TextView codeView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
pathText=(EditText) findViewById(R.id.pagepath);//网页路径
codeView=(TextView)findViewById(R.id.codeView);//显示获得的源码
Button button=(Button) findViewById(R.id.button);//查看按钮
button.setOnClickListener(new ButtonClickListener());//按钮事件
}
/**
* 查看按钮处理事件
*/
private final class ButtonClickListener implements View.OnClickListener{
@Override
public void onClick(View v) {
String path=pathText.getText().toString();
try {
String html=PageService.getHtml(path);
codeView.setText(html);
} catch (Exception e) {
e.printStackTrace();
Toast.makeText(getApplicationContext(), R.string.error, 1);
}
}
}
}
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
来源:http://blog.csdn.net/lht0211/article/details/8828454


猜你喜欢
- 生产者工程POM依赖可以在创建工程时直接选择添加依赖。application文件因为rabbitmq具有默认地址及用户信息,所以如果是本地r
- 本文实例讲述了java获取百度网盘真实下载链接的方法。分享给大家供大家参考。具体如下:目前还存在一个问题,同一ip在获取3次以后会出现验证码
- 有时候我们需要在一个ArrayList的for循环中动态删除元素的需求, 废话不多说看代码List<Integer> list
- 本文实例讲述了C#使用foreach语句遍历堆栈(Stack)的方法。分享给大家供大家参考。具体如下:using System;using
- 用Java编写一个简单的酒店管理系统,供大家参考,具体内容如下为某个酒店编写程序:酒店管理系统,模拟订房、退房、打印所有房间状态等功能。1、
- java字段值为null,不返回该字段类上打注解@JsonSerialize(include = JsonSerialize.Inclusi
- 一. 项目需求我们做项目的时候,数据量比较大,单表千万级别的,需要分库分表,于是在网上搜索这方面的开源框架,最常见的就是mycat,shar
- IBATIS简介ibatis是 Apache的开源项目,一个ORM 解决方案,ibatis最大的特点就是小巧,上手很快。使用 ibatis提
- HttpWebRequest 是一个Http 请求类,继承于 WebRequest。WebRequest 是一个抽象类,能够对统一资源标识符
- 智能指针(smart pointer)是存储指向动态分配(堆)对象指针的类,用于生存期控制
- 问题(1)自己动手写一个锁需要哪些知识?(2)自己动手写一个锁到底有多简单?(3)自己能不能写出来一个完美的锁?简介本篇文章的目标一是自己动
- springboot部署项目在linux的两种方式 可以选择 war包方式或者jar包方式(个人推荐使用jar方式)1.springboot
- Mybatis动态排序 #{} ${}问题在写Mybatis动态排序是遇到一个问题,开始,我是这样写的<if test="o
- 我就废话不多说了,大家还是直接看代码吧~//returnContent为获取到的返回参数System.out.println(returnC
- 这篇文章主要介绍了跨域解决方案Jsonp原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以
- String ipArr[]={"127.0.0.1","127.0.0.2"}; &n
- 前言现在大部分App底部都有一个菜单,实现这个功能也有好多办法:- TabHost+Fragment - RadioGroup+Fragme
- 同时使用and和or的查询UserServiceImpl 类,service实现类import org.springframework.be
- 介绍java中Pair在这篇文章中,我们讨论了一个非常有用的编程概念,配对(Pair)。配对提供了一种方便方式来处理简单的键值关联,当我们想
- JDK * :利用反射机制生成一个实现代理接口的匿名类,在调用具体方法前调用InvokeHandler来处理。CGlib * :利用AS