Android应用与Servlet通信之中文编码问题
最近在写Android APP的时候,经常碰到乱码的情况,所以在这里做一个记录。
Servlet request
APP端代码
String param = URLEncoder.encode(s, "utf-8");//s是包含中文字符的字符串
OutputStream out = connection.getOutputStream();
out.write(param.getBytes());
之前我是这么写的
out.write(s.getBytes("utf-8"));
服务器端代码
byte[] paramBytes = request.getParameter("param").getBytes("iso-8859-1");
String s = new String(paramBytes, "UTF-8");
Servlet Response
服务器端代码
OutputStream out = response.getOutputStream();
out.write(s.getBytes("UTF-8"));//s是含中文的字符串
response.setCharacterEncoding("UTF-8");
这里的原理可以参考这篇博客
Servlet 中文乱码问题及解决方案剖析
在这里做个记录,如有错误还需指正
解决Android应用与Servlet通信乱码
本文介绍了解决Android应用与Servlet进行通信时出现的中文乱码问题的方法。通过正确的编码设置,如使用UTF-8编码并确保两端一致,可以有效避免乱码情况的发生。
1188

被折叠的 条评论
为什么被折叠?



