UTF-8对于奇数个汉字的处理
一直都未能解决UTF-8对奇数个汉字参数的乱码问题
急需高手指点
------解决方案--------------------这个问题可以通过一个字符编码的函数来解决,就是把请求通过ios-8859-1来编码,如下所示:
<%@ page contentType= "text/html;charset=gb2312 "%>
<%@ page import= "java.io.* "%>
<%! String trans(String chi)
{
String result=null;
byte temp[];
try
{
temp=chi.getBytes( "iso-8859-1 ");
result=new String(temp);
}
catch(Unsupported
EncodingException e)
{
System.out.println(e.toString());
}
return result;
}
%>
<%
out.println(trans(request.getParameter( "name ")));
%>
------解决方案--------------------楼主是不是在jsp给java传参的时候出现的这个问题?
如果是,建议楼主在jsp中把中文进行编码:encodeURI( "就喜欢传中文 ");
在java中再进行解码:
String str=new String(str.getBytes( "ISO8859-1 "), "UTF-8 ");
------解决方案--------------------这个与UTF-8没有关系的,应该是你自己程序有问题罢了。
而且你也没有说清到底是什么地方乱码,如果是页面传递参数,你只要在request.getParameter之前调用request.setCharacterEncoding( "UTF-8 ");就可以了,后面的都不需要再转换