今天遇到一个问题就是在Action当中把一条中文信息绑定在URL的后面,ActionForward到别一个页面时,用reqeust.getParameter取出是出现乱码的问题。
现解决办法如下:
1、对要进行URL传递的中文字符进行编码:
String message = java.net.URLEncoder.encode("中文字符","utf-8");
2、在取URL传递中文的页面对字符进行解码:
String msg = request.getParameter("message");
String str=new String(msg.getBytes("ISO-8859-1"),"UTF-8");
--------------------------------------------------------------------------------------
注 1、这里得出的str就是先前传入的"中文字符"。
2、为什么要对取出的字符集形式转换成UTF-8形式,是因为ISO-8859-1是Java中网络传输使用的标准字符集,request.getParameter("message");得到的还是ISO-8859-1字符集,所以要转换一下。
分享到:
相关推荐
- **服务端跳转**:`<jsp:forward>`用于在不改变URL的情况下,将请求转发到其他页面并传递参数。 - **JSP内置对象**: - request和response对象处理HTTP请求和响应,解决乱码问题时通常设置字符编码。 - session...
- **中文 URL 编码问题**:正确编码 URL 中的中文字符。 - **从 txt 取数,在请求中中文乱码**:确保数据文件和 JMeter 都使用相同的编码。 **10.6 CSV 使用技巧** - **技巧**: - **csv 中发现取值不完整**:...
21. **处理中文乱码**:设置请求和响应编码,如`request.setCharacterEncoding("UTF-8")`,确保服务器和客户端一致。 22. **Tomcat内存配置**:在`bin/catalina.sh`或`catalina.bat`中设置`JAVA_OPTS`环境变量,...