方法二:
設置統一的字符編碼
在API中的Javax.servlet.http包下,有一個HttpServletRequest接口中,有這樣一個方法
- public void setCharacterEncoding(String env)
- throws UnsupportedEncoding
其作用是設置統一的字符編碼
- <%@page contentType="text/Html;charset=gbk" %>
- <Html>
- <body>
- <%
- /**//*String name=request.getParmaeter("uname");//取得uname的值
- byte[] b=name.getBytes("ISO8859-1");//將取得的值轉換為Byte數組
- name=new String(b);//將Byte數組重新轉換為所需要的格式
- */
- //String name=new String(request.getParameter("uname").getBytes("ISO8859-1"));//這裡等同於上面
- request.setCharacterEncoding("GBK");
- String name=request.getParameter("uname");
- %>
- <h1>輸入內容為:<%=name%></h1>
- <%-- <h1>輸入內容為:<%=request.getParameter("uname")%></h1> --%>
- </body>
- </Html>
更改後運行,發現結果和以前的一樣。
(注:GBK的范圍大於GB2312 ,GB2312僅指簡體中文,而GBK不僅指簡體中文,還包含了繁體中文等中文。)
以上僅僅是我們總結出來的兩個解決亂碼問題兩個辦法,針對不同問題還需要不同的辦法,希望大家集思廣益,找到症結,對症下藥!