JSP的中文顯示問題
來源:互聯網
上載者:User
最近在學JSP,和大多數新手一樣遇到了中文顯示問題,中文問題有兩種:
(1)頁面本身的出現的中文,解決辦法為JSP頁面開頭加入的
<%@ page language="java" contentType="text/html;charset=GB2312" pageEncoding="GB2312"%>
或是<%@ page language="java" contentType="text/html;charset=GB2312"%>
或是將上面出現的GB2312改為GBK也行,這樣JSP頁面出現的中文將正確顯示。
(2)JSP頁面中請求的參數的值為中文,既request.getParameter("attributeName")得到的值為中文,這樣不加什麼設定的話,顯示也會出問題,解決方案有兩種
1)在所有的request.getParameter("attribute")出現之前,加上
request.setCharacterEncoding("GB2312");
或request.setCharacterEncoding("GBK");
2)第二種方法是在每條String attributeName=request.getParameter("attributeName")語句之後加上
attributeName=new String(attributeName.getBytes("ISO-8859-1"),"GB2312");
或attributeName=new String(attributeName.getBytes("ISO8859_1"),"GB2312");
或attributeName=new String(attributeName.getBytes("ISO-8859-1"),"GBK");
PS:標明為1)和2)的方法不能同時使用,否則同時失效,只能使用其中一種方法