JSP页面是UTF-8,此时该页面提交到action时,action中的中文值乱码如何解决
JSP页面是UTF-8,action因为过滤器设置编码是GBK,此时该页面提交到action时,action中的中文值乱码。请问如何解决?试过newString(data...
JSP页面是UTF-8,action因为过滤器设置编码是GBK,此时该页面提交到action时,action中的中文值乱码。请问如何解决?
试过 new String( dataXML.toString().getBytes( "utf-8" ), "gbk");这样貌似转没用
试过把过滤器
<filter-name>Set Character Encoding</filter-name>
<filter-class>com.tvlink.util.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>GBK</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
中的GBK替换成UTF-8,可以解决倒是,但是其他的JSP页面全都是GBK的,这个页面因为有特殊需要所以必须得UTF-8,如果单独设置过滤器,前面的全局过滤器如何修改?这个单独的过滤器怎么写呢?应该写我action的地址还是jsp的地址···
或者有其他什么办法,多谢
页面提交到action里之前都是没问题的,已经设置 request.seteccoding('UTF-8')来取参了 展开
试过 new String( dataXML.toString().getBytes( "utf-8" ), "gbk");这样貌似转没用
试过把过滤器
<filter-name>Set Character Encoding</filter-name>
<filter-class>com.tvlink.util.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>GBK</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
中的GBK替换成UTF-8,可以解决倒是,但是其他的JSP页面全都是GBK的,这个页面因为有特殊需要所以必须得UTF-8,如果单独设置过滤器,前面的全局过滤器如何修改?这个单独的过滤器怎么写呢?应该写我action的地址还是jsp的地址···
或者有其他什么办法,多谢
页面提交到action里之前都是没问题的,已经设置 request.seteccoding('UTF-8')来取参了 展开
4个回答
展开全部
在action页面添加一句 request.seteccoding('UTF-8').试试。如果还是不行就慢慢的往回走,一步步验证哪一步导致乱码了。
更多追问追答
追问
页面提交到action里之前都是没问题的,把提交action那儿的submit注释了看页面源码,表单里的值都正常,但在action里打印时就是中文乱码了
JSP页面已经设过request.seteccoding('UTF-8')了,所以页面表单的数据看提交后页面的源文件都还正常倒是
追答
action因为过滤器设置编码是GBK,此时该页面提交到action时,action中的中文值乱码。这是你刚才问的问题,你在action页面中也设置这句话。request.setecoding("UTF-8")
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
做JAVA项目,一般全部都定义为UTF-8的...
追问
额 是打算以后都这么着,不过这次已经前期其他的都做成GBK了··· 现在转有点晚···有解决的办法木有啊老兄
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在Action中设置,有好几种解决办法,自己百度去(没分,自己去百度)
更多追问追答
追问
action里怎么设?
有用的话给分没问题啊,反正这个分我也没用处···
追答
解觉了没有啊,没解决的话你试试在Action中加入request.setCharacterEncoding("UTF-8");或者在把url放在encodeURI()里面!希望对你有用!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
中文值乱一般由三种常见的:
页面已经乱码了,就在页面设置;
传输到server时乱码了,还有就是
写入数据库是乱码了;
你就针对的调试,看出在哪一层,再做相应的修改吧,有目的性
望采纳,试试吧
页面已经乱码了,就在页面设置;
传输到server时乱码了,还有就是
写入数据库是乱码了;
你就针对的调试,看出在哪一层,再做相应的修改吧,有目的性
望采纳,试试吧
追问
页面提交到action里之前应该都是没问题的,把提交action那儿的submit注释了看页面源码,表单里的值都正常,但在action里打印时就是中文乱码了
追答
action 哦,那就是action了,你就在web.xml里面重新继承
action com.pdsu.zhang.utils.TestActionServlrt
在其中自己设置encoding ,过滤,就好了吧;
望采纳!
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询