出于兼容性简化、传统中国等多国语言。推荐使用UTF-8编码。

首选。我们期待Android到底应该怎么办:

在发送前,应该对參数值要进行UTF-8编码,我写了一个static的 转换函数。在做发送动作前用它将參数值转换成utf8编码:

public class NetUtil {static public String toUtf8Url(String value) {try {return java.net.URLEncoder.encode(value, "utf8");} catch (UnsupportedEncodingException e) {// TODO Auto-generated catch blockreturn "";}}}

还要注意发送接收函数。返回的httpEntity的返回内容转成BufferedInputStream然后读出byte[],再用new String(byte[],"utf8")这样的方式获得返回字符串。



以下是对服务端的处理,首选保证jsp的字符处理都是用UTF-8:

...
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
  request.setCharacterEncoding("UTF-8");

    有两种办法可让JSP正确将UTF-8解码:

第一种办法简单。配置tomcat的server.xml:vi 打开server.xml,查找 

。然后重新启动tomcat就可以,无需改动JSP代码。


另外一种办法,假设没权限改动tomcat配置,那么须要手动转换:

String p_str =URLDecoder.decode(X11checkString((String)request.getParameter("str")),"UTF-8");
// 假设改动了server.xml,可直接用这个 String p_str = X11checkString((String)request.getParameter("str"));



測试例如以下图,英文、中文简体、传统中文、日语并存也可正确解码。



(转载请注明出处: http://blog.csdn.net/rocklee)


版权声明:本文博主原创文章。博客,未经同意不得转载。

更多相关文章

  1. Android(安卓)getSystemService用法实例总结
  2. Android中程序乱码问题解决
  3. android 事件处理--onInterceptTouchEvent和onTouchEvent调用时
  4. Android第一行代码第二版:5.3.2发送有序广播,在安卓8上无法接收广
  5. Android通过包名获取应用信息
  6. 屏幕触点
  7. Android(安卓)短信发送器的实现
  8. 【转】Android通过Intent发送电子邮件含附件
  9. Android(安卓)智能问答机器人的实现

随机推荐

  1. Android(安卓)Ant编译时候进行混淆
  2. android和js互相调用的问题
  3. ProgressBar 各种样式
  4. 自动打开USB调试
  5. android VersionCode 与VersionName
  6. tcpdump android
  7. 设备的search按钮调用自己程序的search模块
  8. [React-Native]Android(安卓)命令打包
  9. Android——Log,Toast提示框,Intent跳转
  10. android竖着的seekbar