当前位置: 技术问答>java相关
想问一下中文显示的问题,急送分!
来源: 互联网 发布时间:2015-09-15
本文导语: 我在写JSP程序时遇到一个很奇怪的问题,特向各位大侠请教!!! 我的程序前台是JSP,后台是JAVA,当我把一个中文字符串从后台传送到前台显示时,出现乱码,例如传的是“成功!”,显示的是“??!”。 原来...
我在写JSP程序时遇到一个很奇怪的问题,特向各位大侠请教!!!
我的程序前台是JSP,后台是JAVA,当我把一个中文字符串从后台传送到前台显示时,出现乱码,例如传的是“成功!”,显示的是“??!”。
原来还好好的,显示正常,后来页面上不知改了什么东西,就出现这种情况了。
JSP上该加的GB2312语句我也加上去啦,其他设置我也检查啦,就是解决不了!!!
怎么办呢
说明,我的JSP页面是显示正常的,连用JAVASCRIPT弹出的对话框显示也正常。
还有,开发工具是:IBM WebSphere Studio Application Developer Integration Edition。
我的程序前台是JSP,后台是JAVA,当我把一个中文字符串从后台传送到前台显示时,出现乱码,例如传的是“成功!”,显示的是“??!”。
原来还好好的,显示正常,后来页面上不知改了什么东西,就出现这种情况了。
JSP上该加的GB2312语句我也加上去啦,其他设置我也检查啦,就是解决不了!!!
怎么办呢
说明,我的JSP页面是显示正常的,连用JAVASCRIPT弹出的对话框显示也正常。
还有,开发工具是:IBM WebSphere Studio Application Developer Integration Edition。
|
解决办法:
第一:
在jsp页面加入:
或者在servlet里面
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html; charset=gb2312");
上面的如果在不行就用如下的方法在数据入库前进行调用:
public static String UnicodeToChinese(String s){
try{
if(s==null||s.equals("")) return "";
String newstring=null;
newstring=new String(s.getBytes("ISO8859_1"),"gb2312");
return newstring;
}
catch(UnsupportedEncodingException e)
{
return s;
}
}
public static String ChineseToUnicode(String s){
try{
if(s==null||s.equals("")) return "";
String newstring=null;
newstring=new String(s.getBytes("gb2312"),"ISO8859_1");
return newstring;
}
catch(UnsupportedEncodingException e)
{
return s;
}
}
第一:
在jsp页面加入:
或者在servlet里面
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html; charset=gb2312");
上面的如果在不行就用如下的方法在数据入库前进行调用:
public static String UnicodeToChinese(String s){
try{
if(s==null||s.equals("")) return "";
String newstring=null;
newstring=new String(s.getBytes("ISO8859_1"),"gb2312");
return newstring;
}
catch(UnsupportedEncodingException e)
{
return s;
}
}
public static String ChineseToUnicode(String s){
try{
if(s==null||s.equals("")) return "";
String newstring=null;
newstring=new String(s.getBytes("gb2312"),"ISO8859_1");
return newstring;
}
catch(UnsupportedEncodingException e)
{
return s;
}
}