出于兼容性简化、传统中国等多国语言。推荐使用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 block
return "";
}
}
}

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

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

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
...
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
  request.setCharacterEncoding("UTF-8");

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

第一种办法简单。配置tomcat的server.xml:vi 打开server.xml,查找 <Connector port="80"keyword,在里面指定URI编码属性: URIEncoding="UTF-8"

。然后重新启动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

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

Android client和服务器JSP互传中国的更多相关文章

  1. ESP8266串口和MQTT服务器消息互传(版本一) 单纯透传+保存WIFI账号信息

    目标 制作一个ESP8266串口和MQTT相互透传的小WIFI,可用手机修改其连接的路由器,由此该模块可以任意加载到各种串口传输的单片机上,完成硬件到云端的传输. 1 实物图 2 MQTT网页测试客户 ...

  2. Linux使用scp远程传输命令进行服务器文件互传(阿里云服务器)

    阿里云同一个区的的两个云服务器,通过内网进行文件传输,速度快不说(正常传输文件的速度能达到35m~50m/s),还不占用公网带宽. 阿里云云服务器有一个安全组策略,可能需要设置下 内网入.出方向的IP ...

  3. Android中Activity之间访问互传参数

    public class MainActivity extends Activity { private static final int OTHER = 1; @Override protected ...

  4. lrzsz Linux服务器Windows互传文件工具

    lrzsz是一款在linux里可代替ftp上传和下载的程序,但只限于较小的文件,如果是目录需要打包成单个文件在实现下载. 条件:需要使用SecureCRT或者Xshell等客户端工具连接Linux 下 ...

  5. Linux两台服务器上互传文件

    主服务器:192.168.100.30: 文件所在服务器:192.168.100.31: 1. 在主服务上拷贝文件: #scp root@192.168.100.31:/home/a.txt /hom ...

  6. Ubuntu14.04 使用scp远程传输命令进行服务器文件互传

    1.将另一个服务器上的文件拷贝到本地 sudo scp host_name@host_ip:/home/aaa/bbb /ccc/ddd/bbb 上面命令的意思是将远程服务器/home/aaa/目录下 ...

  7. linux服务器之间互传文件

    1.传递单个文件 linux A 服务器 上的文件(假设文件为a.php) 复制到 linux B 服务器上(假设复制后的文件名为b.php) 格式为  scp 文件a的绝对路径  B服务器用户名@B ...

  8. scp —— 服务器之间互传文件

    scp 可以在 2个 linux 主机间复制文件: 从 本地 复制到 远程 * 复制文件:       举例子: scp /home/space/music/.mp3 root@192.168.0.1 ...

  9. Linux的rsync 配置,用于服务器之间远程传大量的数据

    [教程主题]:rsync [课程录制]: 创E [主要内容] [1] rsync介绍 Rsync(Remote Synchronize) 是一个远程资料同步工具,可通过LAN/WAN快速同步多台主机, ...

随机推荐

  1. Android笔记之网络-基本了解

    1.3个相关API接口 Android网络编程相关的API接口与相关用途例如以下图 2. 2种网络架构模式 B/S----浏览器/server端模式,通过应用层的HTTP协议通信,不须要特定clien ...

  2. android中更改spinner、AutoCompleteTextView切割线的颜色

    话说去除切割线的方法找了非常久也没找到,最终发现了更改切割线的方法 spinner和AutoCompleteTextView提示列表中间有一条黑色的切割线.想要改变它的颜色值,就要重写style. 1 ...

  3. Android之场景桌面(一)

    声明:转载请务必注明出处,本文代码和主题仅供学习交流,请勿用于商业用途. 引言:最近Android场景桌面开始流行起来了,跟原始的Android桌面相比,场景桌面能逼真的模拟各种自然物体,并且通过点击 ...

  4. hdu4115 Eliminate the Conflict

    Eliminate the Conflict Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Othe ...

  5. 开启本地MySql数据库远程连接

    解决MySQL不允许从远程访问的方法 开启 MySQL 的远程登陆帐号有两大步: 1.确定服务器上的防火墙没有阻止 3306 端口. MySQL 默认的端口是 3306 ,需要确定防火墙没有阻止 33 ...

  6. PHPDocumentor代码注释规范说明

       PHPDocumentor是一个的用PHP写的道具,对于有规则注释的php程序,它能够快速生成具有相互参照,索引等功能的API文档. 标记 用途 描述 @abstract   抽象类的变量和方法 ...

  7. Android onTouch、OnLongClick、onClick和ScrollView滑动事件冲突

    为了实现近期录制的长按,松开手指,结束录制功能.在项目,难道你去走一走会头晕,书写demo为了下一个梳理. 顺便研究android事件调用机制. 先上效果界面: 布局: <RelativeLay ...

  8. (hdu step 7.1.3)Lifting the Stone(求凸多边形的重心)

    题目: Lifting the Stone Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Other ...

  9. Android 通过系统使用NotificationListenerService 监听各种Notification的用法

    NotificationListenerService是通过系统调起的服务,当有应用发起通知的时候,系统会将通知的动作和信息回调给NotificationListenerService. 在继承Not ...

  10. JavaScript获取路径

    JavaScript获取路径 1.设计源代码 <%@ page language="java" import="java.util.*" pageEnco ...