首页>代码>java自动检测获取http请求URL地址的网页内容编码工具类>/java自动检测获取http请求URL地址的网页内容编码工具类/src/com/zuidaima/encoding/util/Main.java
package com.zuidaima.encoding.util; import java.io.BufferedInputStream; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.URL; import org.apache.http.util.ByteArrayBuffer; import org.apache.http.util.EncodingUtils; import org.junit.Test; public class Main { @Test public void testZuidaima() throws Exception { String url = "http://www.zuidaima.com/"; String html = parseHttpEncoding(url); System.out.println(html); } @Test public void testBaidu() throws Exception { String url = "http://www.baidu.com/"; String html = parseHttpEncoding(url); System.out.println(html); } @Test public void testSinaGBK() throws Exception { String url = "http://www.sina.com.cn/"; String html = parseHttpEncoding(url); System.out.println(html); } @Test public void testSinaJp() throws Exception { String url = "http://sina.jp/"; String html = parseHttpEncoding(url); System.out.println(html); } @Test public void testGov() throws Exception { String url = "http://www.gov.cn/"; String html = parseHttpEncoding(url); System.out.println(html); } @Test public void testBeijingGov() throws Exception { String url = "http://www.beijing.gov.cn/"; String html = parseHttpEncoding(url); System.out.println(html); } public String parseHttpEncoding(String url) throws Exception { BytesEncodingDetect bytesEncodingDetect = new BytesEncodingDetect(); HttpURLConnection conn = null; URL serverUrl = new URL(url); conn = (HttpURLConnection) serverUrl.openConnection(); conn.setInstanceFollowRedirects(false); conn.setRequestMethod("GET"); conn.setConnectTimeout(10000); conn.setReadTimeout(10000); conn.connect(); InputStream ins = conn.getInputStream(); String charset = "utf-8"; BufferedInputStream bis = new BufferedInputStream(ins); ByteArrayBuffer baf = new ByteArrayBuffer(bis.available()); int data = 0; while ((data = bis.read()) != -1) { baf.append((byte) data); } int encodingGuess = bytesEncodingDetect.detectEncoding(baf .toByteArray()); charset = BytesEncodingDetect.htmlname[encodingGuess]; String html = EncodingUtils.getString(baf.toByteArray(), charset); // 转换为字符串 conn.disconnect(); System.out.println(url + ":" + charset); return html; } }
最近下载更多
wei112233 LV15
2020年2月2日
1487092378 LV1
2019年7月29日
w123456 LV1
2017年4月9日
edsion LV7
2017年4月2日
wfctyjt LV1
2016年10月15日
依然在路上 LV17
2016年8月2日
hackxhao LV15
2016年7月31日
erosares LV9
2015年10月29日
yyz1314512 LV2
2015年9月16日
狼King LV13
2015年7月11日
最近浏览更多
lichun cai LV1
2023年5月24日
u一头热我认同你 LV1
2022年6月23日
lichang714 LV2
2021年10月8日
1798672867 LV21
2021年8月6日
Mirai
2021年6月9日
暂无贡献等级
流水浅浅 LV1
2021年5月9日
爱睡觉的小石头
2020年12月7日
暂无贡献等级
0312wangchen LV26
2020年7月1日
wwwbl123 LV2
2020年5月26日
wei112233 LV15
2020年2月2日