有一次,做某一个网络App项目时,遇到了一个中文乱码的问题,修改Android Studio的编码的格式还是换编译的编码格式都不能解决问题。经过不断探索、不停Google,终于解决了问题。

原来是Java的输入流的问题。

以下是原来的获取网页Html的函数:

    public static String getHtml( HttpClient httpClient, String url ) throws Exception {        HttpGet get =new HttpGet(url);        HttpResponse response = httpClient.execute(get);        int ch;        InputStream inputStream = response.getEntity().getContent();        StringBuilder sb = new StringBuilder();        while((ch = inputStream.read()) != -1) {            sb.append((char) ch);        }        String html = sb.toString();        // android.util.Log.i("Get", html);        return html;    }

经过修改,应该为以下的代码:

    public static String getHtml( HttpClient httpClient, String url ) throws Exception {        HttpGet get =new HttpGet(url);        HttpResponse response = httpClient.execute(get);        int ch;        InputStream inputStream = response.getEntity().getContent();        BufferedReader br = new BufferedReader(                new InputStreamReader(inputStream,"UTF-8"));        String data = "";        StringBuilder sb = new StringBuilder();        while((data = br.readLine()) != null) {            sb.append(data);            sb.append("\n");        }        String html = sb.toString();        // android.util.Log.i("Get", html);        return html;    }


更多相关文章

  1. Android中TabLayout切换选项背景和修改字体大小
  2. Android(安卓)关于JSON封装
  3. Radial GradientDrawable兼容问题
  4. Android(安卓)2.3状态栏中添加menu home back快捷键
  5. [PX3][Android7.1]学习笔记 --- init.rc文件格式介绍
  6. Android(安卓)报错:Conversion to Dalvik format failed: ...
  7. Android(安卓)studio 使用github上的android开源项目
  8. Android(安卓)Edittext 手机号码格式输入设置
  9. Android(安卓)Studio集成OpenCV

随机推荐

  1. android应用去掉title bar 及全屏处理方
  2. Android 各种基础控件布局
  3. Android 8、Android 9获取手机序列号的兼
  4. Android(安卓)开源组件和第三方库汇总
  5. Kernel.org hacked – how to get Androi
  6. Android(安卓)-- Intent
  7. Android 实现全屏和无标题栏的显示
  8. Google Android(安卓)SDK开发范例-------
  9. Android(安卓)NDK 知识系列(三)
  10. 用android:clipChildren来实现红心变大特