
这样试试:
equest.setCharacterEncoding("utf-8")
String strChineseString = request.getParameter("addr")
System.out.println("strChineseString :"+strChineseString )
strChineseString =new String(strChineseString.getBytes("iso-8859-1"),"utf-8")
System.out.println("strChineseString :"+strChineseString )
1、JSP页面乱码这种乱码的原因是应为没有在页面里指定使用的字符集编码,解决方法:只要在页面开始地方用下面代码指定字符集编码即可,
<%@ page contentType="text/htmlcharset=utf-8" language="java" %>
2、数据库乱码
这种乱码会使你插入数据库的中文变成乱码,或者读出显示时也是乱码,解决方法如下:
在数据库连接字符串中加入编码字符集
String Url="jdbc:mysql://localhost/digitgulf?user=root&password=root&useUnicode=true&characterEncoding=GB2312"
并在页面中使用如下代码:
response.setContentType("text/htmlcharset=gb2312")
request.setCharacterEncoding("gb2312")
3、中文作为参数传递乱码
当我们把一段中文字符作为参数传递个另一页面时,也会出现乱码情况,解决方法如下:
在参数传递时对参数编码,比如
RearshRes.jsp?keywords=" + java.net.URLEncoder.encode(keywords)
然后在接收参数页面使用如下语句接收
keywords=new String(request.getParameter("keywords").getBytes("8859_1"))
希望对你有帮助。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)