如何解决request.getParameter取值乱码问题
2个回答
展开全部
客户端向服务器端发送信息,如果发送的编码和服务器端接收的编码不一样,使腔档用request.getParameter()方法获取的表单信息会产生乱码。
客户端接收服务器的响应信息,如果响应编码与客户浏览器的编码不一致时,会造成中文乱码显示。
为了解决中文正常显示,可以采取以宴轿下两种方案。
(1)post方式提交表单
a,设置页面的编码
在jsp或HTML页面中,有时会涉及编码的定义,可使用统一编码,例如GBK或UTF-8
b,设置表单提交方式
在页面中,将
标记的method属性值设置为post,该属性默认为get,get方式会将表单信息采取特殊编码,然后借助于URL发送给服务器。
c,设置服务器接收编码
在使用request.getParameter()方式接收客户表单信息之前,使用以下代码设置接收编码,编码与页面保持一致。
request.setCharacterEncoding("UTF-8");
使用setCharacterEncoding()方法指定编码后,可以通过getParameter()方法按指定编码获得客户信息,如果不指定,则默认使用ISO-8859-1编码。
d,设置服务器端响应信息编码
设置服务器向客伍祥乱户端响应的信息编码,告诉浏览器采用指定编码显示,可以使用下列指令或代码。
在响应的jsp中,使用如下指令设置。
客户端接收服务器的响应信息,如果响应编码与客户浏览器的编码不一致时,会造成中文乱码显示。
为了解决中文正常显示,可以采取以宴轿下两种方案。
(1)post方式提交表单
a,设置页面的编码
在jsp或HTML页面中,有时会涉及编码的定义,可使用统一编码,例如GBK或UTF-8
b,设置表单提交方式
在页面中,将
标记的method属性值设置为post,该属性默认为get,get方式会将表单信息采取特殊编码,然后借助于URL发送给服务器。
c,设置服务器接收编码
在使用request.getParameter()方式接收客户表单信息之前,使用以下代码设置接收编码,编码与页面保持一致。
request.setCharacterEncoding("UTF-8");
使用setCharacterEncoding()方法指定编码后,可以通过getParameter()方法按指定编码获得客户信息,如果不指定,则默认使用ISO-8859-1编码。
d,设置服务器端响应信息编码
设置服务器向客伍祥乱户端响应的信息编码,告诉浏览器采用指定编码显示,可以使用下列指令或代码。
在响应的jsp中,使用如下指令设置。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询