工具:

获取流数据

package com.glsite.htmlviewer;import java.io.ByteArrayOutputStream;
import java.io.InputStream;/*** 流的一个工具类,用来将输入流转换为文本* @author glsite.com* @version $Rev$* @des ${TODO}* @updateAuthor $Author$* @updateDes ${TODO}*/
public class StreamUtils {/*** 读取流的数据返回一个字符串* @param is*          获取的流* @return  字符串 如果解析失败返回null*/public static String readStream(InputStream is) {try {ByteArrayOutputStream baos = new ByteArrayOutputStream();int len = 0;byte[] buffer = new byte[1024];while ((len = is.read(buffer)) != -1) {baos.write(buffer, 0, len);}is.close();String result = baos.toString();if (result.contains("gb2312")) {return baos.toString("gb2312");} else if (result.contains("gbk")){return baos.toString("gbk");} else {return result;}} catch (Exception e) {e.printStackTrace();return null;}}
}

主程序:

package com.glsite.htmlviewer;import android.os.Handler;
import android.os.Looper;
import android.os.Message;
import android.os.SystemClock;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;public class MainActivity extends AppCompatActivity {private static final int LOAD_SUCCESS = 1;private static final int LOAD_ERROR = 2;private EditText mEtUrl;private TextView mTvResult;Handler mHandler = new Handler() {@Overridepublic void handleMessage(Message msg) {switch (msg.what) {case LOAD_SUCCESS:String text = (String) msg.obj;mTvResult.setText(text);break;case LOAD_ERROR:Toast.makeText(MainActivity.this,"加载失败, code:" + msg.obj, Toast.LENGTH_SHORT).show();break;default:break;}}};@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);mEtUrl = findViewById(R.id.et_url);mTvResult = findViewById(R.id.tv_result);}/*** 查看网页源码,访问网络的操作,1.声明权限,2.开启子线程* @param view*/public void viewHtmlSource(View view) {final String strUrl =  mEtUrl.getText().toString().trim();if (TextUtils.isEmpty(strUrl)) {Toast.makeText(this,"url不能为空", Toast.LENGTH_SHORT).show();return;}new Thread(){@Overridepublic void run() {try {URL url = new URL(strUrl);HttpURLConnection conn = (HttpURLConnection) url.openConnection();int code = conn.getResponseCode();if (code == 200) {InputStream is = conn.getInputStream();String text = StreamUtils.readStream(is);// ctrl + qLooper.prepare();Toast.makeText(MainActivity.this,"test", Toast.LENGTH_SHORT).show();Looper.loop();System.out.println("here");
//                        mTvResult.setText(text);// 4.x throw exception Only the original thread that created a view
//                        Message msg = Message.obtain();
//                        msg.what = LOAD_SUCCESS;
//                        msg.obj = text;
//                        mHandler.sendMessage(msg);} else {Message msg = Message.obtain();msg.what = LOAD_ERROR;msg.obj = "code:" + code ;mHandler.sendMessage(msg);}} catch (Exception e) {e.printStackTrace();Message msg = Message.obtain();msg.what = LOAD_ERROR;msg.obj = -1;mHandler.sendMessage(msg);}}}.start();}
}
<uses-permission android:name="android.permission.INTERNET"/>

android查看网页源码,流数据相关推荐

  1. Mac OS使用技巧十九:Safari碉堡功能之二查看网页源码

         因为大三下的时候选修了搜索技术,了解了网络上搜索引擎和网络爬虫的信息扒取的一些东西,后来我们做了一个比较水的东西,就是只扒取了几家较大的下载网站几十个软件的评分下载量等信息,当用户输入一个程 ...

  2. 手机浏览器查看网页源码

    查看网页源码一直以为是pc端浏览器的功能,直到今天才直到手机浏览器也可以的,我用的是chrome手机浏览器,只需要在域前加view-source:即可. 比如:view-source:https:// ...

  3. Via浏览器怎么查看网页源码

    Via浏览器怎么查看网页源码?Via浏览器是一款非常不错的手机主页浏览软件,该软件功能强大,除了基本的主页浏览之外,它还可以帮助用户进行在线资源的嗅探,并且还可以直接在手机上进行网页源码的查看.下面小 ...

  4. 关于审查元素与查看网页源码的区别

    不知道大家发现没有,当我们用chrome浏览器打开任意一个网页,右键单击页面有两个很相似的选项 就是查看网页源代码以及检查(审查元素). 之前我一直认为这两个选项是没有什么区别的,但chrome既然列 ...

  5. 查看网页源码的编码格式

    需求:解析网页数据时偶尔会出现乱码,这是由于编码格式不对导致的,这时我们就需要知道网页源码的编码方式 解决办法: 以http://stock.jrj.com.cn/2018/12/0400002544 ...

  6. 如何查看网页源码code、申请头headers等

    1.打开想要查找的网页,按F12,显示源码(默认在network模块): 2.在左侧(如下图)填写comment,回车: 3.点击"name"栏中实体信息条目,右侧出现" ...

  7. 如何在手机上查看网页源码

    如何在手机上查询网页的源代码 下载一个Via浏览器 在页面输入网址 进入后点击 点击工具箱 4. 点击源码 5. 还可以设置离线页面 6. 总结 还是用电脑舒服

  8. 邮件 查看html源码,程序员跟着大师源码学习系列之2:查看网页和电子邮件的源码...

    在最近的文章中有大量电子邮件相关的内容,已经有不少同学上手发送了很多的邮件到我的测试邮箱中.坦率地说,有不少同学发送的电子邮件格式都是错误的 ... 那么抛开各种深奥地理论,有没有一种方法可以看看 1 ...

  9. MATLAB去读网页源码时中文乱码

    MATLAB去读网页源码时中文乱码 防止获取的网页源码中文乱码 %设置网页的编码方式(必须首先知道网页的编码方式) options = weboptions('CharacterEncoding',' ...

最新文章

  1. 解决ModuleNotFoundError: No module named ‘numpy.core._multiarray_umath‘ 错误
  2. 键盘连击测试_测试梗欢迎补充
  3. 快速了解Bagging算法
  4. ABAP 并发执行的威力
  5. 032——VUE中表单控件处理之复选框的处理
  6. 揭秘Emotet恶意软件新变种幕后攻击者的运营模式
  7. 2022年前端自学全套路线总结(黑马版)
  8. SATA,SAS,SSD 读写性能测试结果
  9. AIDL中should be declared in a file错误
  10. armbian 安装python3
  11. #今日论文推荐# 将有色液体图像转换成透明液体,CMU教机器人准确掌控向杯中倒多少水
  12. word文档打不开的常见原因?好的处理方法
  13. 使用vue制作动画效果
  14. 十五万左右纯电SUV怎么选?奇瑞大蚂蚁是真香
  15. 【C语言笔记】【宏定义系列】 向下舍入到指定数值的倍数
  16. Java后端Cookie工具类(设置Cookie有效时间、得到Cookie的域名等方法)
  17. html圣诞快乐英文,圣诞快乐英语,圣诞快乐英语简写?
  18. 《Python基础教程》学习笔记——条件、循环及其他语句
  19. Buuctf -web wp汇总(三)
  20. write-up web source

热门文章

  1. shell命令wc,md5sum,basename
  2. 【NOIP校内模拟】T1 膜法(组合数)
  3. centos 6.8部署nginx
  4. SQLserver通过链接服务器连接oracle
  5. (转)C#中的Dictionary字典类介绍
  6. 禁ping也能ping的工具: tcping
  7. 在Ubuntu 16.04下安装nodejs
  8. 企业级容器镜像仓库Harbor的搭建
  9. java中的“+”运算符,产生新对象问题。(非常好的面试题!)
  10. 【Python-2.7】切片