qq_22841899
上古豆腐
2017-05-30 14:57
采纳率: 50%
浏览 1.4k
已采纳

java用get请求xml乱码问题

网址

我在java里面用get请求上面这个网址,获取网页内容的时候,显示出来的是乱码,然而用浏览器显示正常啊,而且上面这个网址的编码格式应该是utf8的,或者是windows-1252的,然而这两种编码我都试过,都是乱码,就是那种一堆问号图片说明。怎么搞?
附上我的代码:

    URL url = new URL("http://wthrcdn.etouch.cn/WeatherApi?citykey=101010100");

    HttpURLConnection connection = (HttpURLConnection) url.openConnection();
    BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream(), "utf-8"));
    String line;
    while ((line = reader.readLine()) != null){
    System.out.println(line);
    }
    reader.close();
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • u014167893
    冷咖啡15 2017-05-31 04:16
    已采纳

    URL url = new URL("http://wthrcdn.etouch.cn/WeatherApi?citykey=101010100");
    HttpURLConnection connection = (HttpURLConnection) url.openConnection();
    InputStream urlStream = new GZIPInputStream(connection.getInputStream());

    BufferedReader reader = new BufferedReader(new InputStreamReader(urlStream,"UTF-8"));

    String line = "";

    while((line = reader.readLine()) != null) {

    System.out.println(line);

    }

    reader.close();

    这样写就不会乱码了,如果解决了请采纳!!!

    点赞 评论
  • CSDN___LYY
    洋仔聊编程 2017-05-31 00:37

    你的xml文件本身是UTF-8的吗 ,你可以另存为以下
    只要保持编码都是utf8,就不会乱码把

    点赞 评论

相关推荐