总结下android下的中文乱码问题,以后开发东西基本就在这里写了。一是通过javaeye能认识不少朋友。二是对自己的博客内容进行管理。三是平时日志在sina的博客里写吧。

一 url to android

JAVA在网络传输中使用的编码是"ISO-8859-1",故在输出时需要进行转化。我们再我们的服务端进行这样转码。

Stringstr="中文";

str=newString(str.getBytes("GB2312"),"8859_1");

android接受端 进行如下解码。


这正好与在网页中输出相反如:
str=newString(str.getBytes("8859_1"),"GB2312");

二 android to url

android进行如下编码。

java.net.URLEncoder.encode(address,"gb2312") 基本意思是把我发送的内容进行编码为gb2312

服务端进行如下解码

request.getParameter("address").getBytes("iso-8859-1"),"gb2312"

Androidhttppost中文乱码问题的修正

在使用DefaultHttpClient向服务器发送post请求,在请求体中
发送utf-8编码的数据。
android默认编码是utf-8,所以从EditText获取的text即为utf-8编码的数据。
但是服务器接受就是乱码。
//reqEntity.setContentEncoding("UTF-8");也是乱码。
但是StringEntity reqEntity = new StringEntity(post, HTTP.UTF_8);在构造
中指定则没有问题了。

在进行android应用开发的时候,有时候会用的HTTP与服务端交互,比如用GET和POST方法,然后返回数据,往往会出现返回的中文变成乱码的现象。解决android http中文乱码问题如下。

1、确保服务端输出编码为UTF-8

服务器数据显示格式为UTF-8,在Android的Widget中显示却乱码。在获取时设置一下格式即可。

编写: String strResult = EntityUtils.toString(httpResponse.getEntity(),"UTF-8"); 这样android中文乱码问题就能解决了

更多相关文章

  1. EditText禁止输入中文设置
  2. Android(安卓)Studio 3.3 配置aspectJ : app-module和library-mod
  3. Android开发指南中文版(一)What is Android?
  4. Activity与Fragment通过接口回调进行通信
  5. Android(安卓)Intent 程序之间进行通信 传输数据
  6. Android(安卓)调用系统Email --多附件
  7. Android下实现一个Activity的全屏显示
  8. Android——RecyclerView入门学习之RecyclerView.Adapter
  9. Android(安卓)开发日常笔记,持续更新中

随机推荐

  1. Android初学心得和一些资料下载
  2. Android(安卓)四大组件之Activity 基础总
  3. Android学习攻略:手把手教你循序渐进地学
  4. Android中ViewFlipper的使用
  5. 在Android平台上实现条型码扫描与识别
  6. android 细分化面临的问题
  7. FFmpeg在Android上的移植优化步骤 .
  8. Android——腾讯X5使用记录
  9. Android(安卓)的平台碎片化问题
  10. 两种特殊TabHost实现