jsp 向servlet中传值中文为什么有乱码,我用的是form表单method="post"

发布于2022-01-13 03:47:29
4个回答
admin
网友回答2022-01-13
需要转码来解决:
转码可以在页面中或是sevlet以及过滤都可以解决的,下面以页面和servlet为例:
方法一:设置 request 和 response 的编码 [ 页面编码必须为 u8 ]
request.setCharacterEncoding(UTF-8);//传值编码
response.setContentType(text/html;charset=UTF-8);//设置传输编码
方法二:
String str1=传来的数据。
String ss=new String(str1.getBytes(ISO-8859-1),utf-8); //转码UTF8
admin
网友回答2022-01-13
1.jsp文件中设置编码类型
如:%@ page language=java contentType=text/html; charset=UTF-8 pageEncoding=UTF-8%
2.servlet中在获取post数据之前
request.setCharacterEncoding(utf-8);

以上代码基于utf-8格式.
admin
网友回答2022-01-13
方法1jsp等文件字符集都设置成gbk
方法2servlet中用encode和decode转码
admin
网友回答2022-01-13
一:设置 request 和 response 的编码 [ 页面编码必须为 u8 ]
request.setCharacterEncoding(UTF-8);//传值编码
response.setContentType(text/html;charset=UTF-8);//设置传输编码

还不行的话,就在servlet里面转码:
String str1=接收的内容。
String ss=new String(str1.getBytes(ISO-8859-1),utf-8); //转码

回到
顶部