当前位置: 代码迷 >> J2SE >> 新手!HttpURLConnection有时返回乱码的有关问题
  详细解决方案

新手!HttpURLConnection有时返回乱码的有关问题

热度:46   发布时间:2016-04-23 19:40:51.0
新手求助!HttpURLConnection有时返回乱码的问题!
新手刚开始学习Java,弄个Get方式获取网页源码的代码,尝试获取Baidu首页的源码
但是这里问题就来了,不停地多次运行(期间什么都不改变),有时候返回的数据就是好的,有时候返回的就是乱码,这是为啥????
求大神解释!!!!!
代码很简单:
try
{
url = new URL("http://www.baidu.com");
HttpURLConnection httpURLConnection = (HttpURLConnection) url
.openConnection();
httpURLConnection.setRequestMethod("GET");
httpURLConnection.setReadTimeout(5000);
InputStream inputStream = httpURLConnection.getInputStream();
InputStreamReader inputStreamReader = new InputStreamReader(
inputStream, "utf-8");
BufferedReader bufferedReader = new BufferedReader(
inputStreamReader);
StringBuffer strBuffer = new StringBuffer();
String line=null;
while((line=bufferedReader.readLine())!=null){
  strBuffer.append("\n" + line);
}
System.out.println(strBuffer);
bufferedReader.close();
} catch (MalformedURLException e)
{
e.printStackTrace();
} catch (IOException e)
{
e.printStackTrace();
}


在网上搜索的很多,可是都是编码问题,改了编码就好了,但是我这个重点是:
有时候正常,有时候就乱码。。。
乱码还复制不出来,真是醉了
还是用过百度到的类似代码,也是有时好有时坏。。。

------解决思路----------------------
换成www.163.com也有这个问题么,百度好像改用https了。
------解决思路----------------------
百度支持的协议时https的吧

https://www.baidu.com/
  相关解决方案