servlet中采用javascript的alert()方式给用户提示一些信息时,该信息出现中文乱码的解决方法:
在servlet中 PrintWriter out = response.getWriter();
msg="删除成功!"
out.println("<script>");
out.println("alert('" + msg + "');");
out.println("window.location='" + url + "'");
out.println("</script>");
结果alert()的中文是乱码 试了 msg = newString(msg.getBytes("utf-8"),"gb2312"); 多种编码 仍是乱码
解决方法:
方法一: 把response的字符编码类型设置一下,在servlet中加个
response.setCharacterEncoding("GBK");
//GBK或者UTF-8都可以
或者:
String CONTENT_TYPE = "text/html; charset=GBK";
////GBK或者UTF-8都可以
response.setContentType(CONTENT_TYPE);
方法二:在打印的js代码前面加上一个html的设置中文乱码的头部也可以
out.print("<html><head><meta charset='UTF-8'></head>");