1.直接上效果图

2.代码

主要就是工具类HtmlService.java:

import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL; /**
* 获取HTML数据
*
* @author David
*
*/
public class HtmlService { public static String getHtml(String path) throws Exception {
// 通过网络地址创建URL对象
URL url = new URL(path);
// 根据URL
// 打开连接,URL.openConnection函数会根据URL的类型,返回不同的URLConnection子类的对象,这里URL是一个http,因此实际返回的是HttpURLConnection
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
// 设定URL的请求类别,有POST、GET 两类
conn.setRequestMethod("GET");
//设置从主机读取数据超时(单位:毫秒)
conn.setConnectTimeout(5000);
//设置连接主机超时(单位:毫秒)
conn.setReadTimeout(5000);
// 通过打开的连接读取的输入流,获取html数据
InputStream inStream = conn.getInputStream();
// 得到html的二进制数据
byte[] data = readInputStream(inStream);
// 是用指定的字符集解码指定的字节数组构造一个新的字符串
String html = new String(data, "utf-8");
return html;
} /**
* 读取输入流,得到html的二进制数据
*
* @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();
} }

MainActivity.java 修改如下:

public class MainActivity extends Activity {

    private String path = "http://www.cnblogs.com/yc-755909659/";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); TextView textView = (TextView)this.findViewById(R.id.textView);
try {
String htmlContent = HtmlService.getHtml(path);
textView.setText(htmlContent);
} catch (Exception e) {
textView.setText("程序出现异常:"+e.toString());
}
}
}

activity_main.xml 很简单,还是放上来吧

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" > <TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content" /> </ScrollView>

最后,记得添加网络访问权限哦

<uses-permission android:name="android.permission.INTERNET"/>

【Android Demo】获取指定网页的页面源代码的更多相关文章

  1. Android遍历获取指定目录的文件

    我们经常遇到一个问题,需要获取指定目录的某些扩展名的文件,并将其存在Vector中,怎么来实现呢? // 获取当前目录下所有的mp4文件 public static Vector<String& ...

  2. C#获取指定网页源码的几种方法

    // WebClient private string GetWebClient(string url) { string strHTML = ""; WebClient myWe ...

  3. C#快速获取指定网页源码的几种方式,并通过字符串截取函数 或 正则 取指定内容(IP)

    //只获取网页源码开始到标题位目的进行测试 //第一种方式经过测试,稍微快点 string url = "http://www.ip.cn"; HttpWebRequest req ...

  4. Android遍历获取指定目录的文件(转)

    // 获取当前目录下所有的mp4文件 public static Vector<String> GetVideoFileName(String fileAbsolutePath) { Ve ...

  5. android 打开浏览器指定网页

    <?xml version="1.0" encoding="utf-8"?> <!-- 定义当前布局的基本LinearLayout --> ...

  6. 【python】获取指定网页上的所有超级链接

    # -*- coding: utf-8 -*- import urllib2 import re #connect to a URL website = urllib2.urlopen("h ...

  7. Python 网络爬虫与信息获取(二)—— 页面内容提取

    1. 获取超链接 python获取指定网页上所有超链接的方法 links = re.findall(b'"((http|ftp)s?://.*?)"', html) links = ...

  8. Android 获取浏览器当前分享页面的截屏

    Android 获取浏览器当前分享页面的截屏 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 源码:AndroidDemo/BrowserScreenShotActivity 文中 ...

  9. Python 网络爬虫 009 (编程) 通过正则表达式来获取一个网页中的所有的URL链接,并下载这些URL链接的源代码

    通过 正则表达式 来获取一个网页中的所有的 URL链接,并下载这些 URL链接 的源代码 使用的系统:Windows 10 64位 Python 语言版本:Python 2.7.10 V 使用的编程 ...

随机推荐

  1. GWYAlertSelectView 选择收货地址和选择联系人

    iOS 开发在app内(特别是在类似购物和旅游类)经常会用到选择,添加联系人和收货地址,而且经常都是在跳转界面,很是麻烦,今天我就自己封装了一个类似弹出视图的代码,方便了很多!demo地址: http ...

  2. linux下的inode记录

     我们经常在Linux下可以看到inode,都不知道是什么东东,那么我们现在来慢慢了解下.   一.inode是什么? 理解inode,要从文件储存说起. 文件储存在硬盘上,硬盘的最小存储单位叫做&q ...

  3. C语言动态调用库(转)

    转自:http://cloverprince.iteye.com/blog/481309 现有一个主程序用C语言写成.现在要允许第三方开发人员编写扩展的模块,约定第三方开发的模块必须提供一系列已知名称 ...

  4. Vue自带的过滤器

    gitHub地址:https://github.com/lily1010/vue_learn/tree/master/lesson05 一 过滤器写法 {{ message | Filter}} 二 ...

  5. Create a “% Complete” Progress Bar with JS Link in SharePoint 2013

    Create a “% Complete” Progress Bar with JS Link in SharePoint 2013 SharePoint 2013 has a lot new fea ...

  6. Apache服务器的URL重定向

    前端时间要整个Apache重定向功能,在此记录一下. 一.安装Apache Windows版本官方下载安装文件httpd-2.2.21-win32-x86-openssl-0.9.8r,选择安装目录, ...

  7. android开发之——获取相册图片和路径

    Android开发获取相册图片的方式网上有很多种,这里说一个Android4.4后的方法,因为版本越高,一些老的api就会被弃用,新的api和老的api不兼容,导致出现很多问题. 比如:managed ...

  8. OC登陆界面登陆按钮动画

    1.原作者:@entotsu 1.1 原作者连接:https://github.com/entotsu/TKSubmitTransition 2.使用: import "HyTransiti ...

  9. C++语言出现的bug

    输出语句不管是C语言的printf();还是cout << "" << endl; 在循环语句中会出现一个bug: 下面是不正常的两种情况: 下面是正常的: ...

  10. html 关于内部是float元素的外部div高度为0的解决方法!

    最近编写一个页面的时候遇见一个问题,外部div是block的,而内部元素是float的,大家应该都知道float的元素是没有实际高度的,就算你设置了float元素的高度他也不会撑开外部block元素的 ...