struts2 action之间 传值中文乱码

时间:2021-03-10 13:05:42
我整个项目的编码是UTF-8,在两个action之间传值出现中文乱码,后来想到办法,先用BASE64对要传的值进行编码,软后通过action传递之后再用BASE64解码,这样照道理应该是完全没问题的,但有些中文通过编码解码后就不是原来那个字了,就变成同音字或其它的,单独把这个汉字和提取出来用BASE64编码解码也是完全没问题的,请教各位大虾,问题出在什么地方?

8 个解决方案

#1


0.00%

#2


给tomcat下的server.xml文件Connector 节点里,设置一下编码格式看看

#3


看我最近发的那个帖子应该可以找到答案

#4


我一直是在暂存储的时候进行下中文转换的:
public static String ToCN(String str)
{
String strcn=null;
try
{
strcn=new String(str.getBytes("iso-8859-1"),"UTF-8");
}
catch(UnsupportedEncodingException e)
{
e.printStackTrace();
}
return strcn;
}
应该和lz说的是同一个问题

#5


两个action之间传递值,乱码要转码的 用getBytes()方法

#6


如 String strcn=new String(str.getBytes("iso-8859-1"),"UTF-8");

#7


给tomcat下的server.xml文件Connector 节点里,设置一下编码格式看看

还不行,可以再配置一个过滤器试试。。

#8


在struts.xml中加入
<constant name="struts.i18n.encoding" value="GBK"/>

#1


0.00%

#2


给tomcat下的server.xml文件Connector 节点里,设置一下编码格式看看

#3


看我最近发的那个帖子应该可以找到答案

#4


我一直是在暂存储的时候进行下中文转换的:
public static String ToCN(String str)
{
String strcn=null;
try
{
strcn=new String(str.getBytes("iso-8859-1"),"UTF-8");
}
catch(UnsupportedEncodingException e)
{
e.printStackTrace();
}
return strcn;
}
应该和lz说的是同一个问题

#5


两个action之间传递值,乱码要转码的 用getBytes()方法

#6


如 String strcn=new String(str.getBytes("iso-8859-1"),"UTF-8");

#7


给tomcat下的server.xml文件Connector 节点里,设置一下编码格式看看

还不行,可以再配置一个过滤器试试。。

#8


在struts.xml中加入
<constant name="struts.i18n.encoding" value="GBK"/>