傳中文參數亂碼問題

從jsp頁面傳參數到servlet, tomcat默認用的轉碼和解碼的編碼是iso-8859-1,,日常傳英文參數,因此直接接收參數也不會改變值。可是中文不一樣,直接接收的值跟傳的參數是不一致的,爲了解決讓傳過來的參數的值=jsp頁面的那個參數的值(假設從jsp傳參數到servlet),須要在servlet頁面作如下行爲:
         //接收jsp頁面傳過來的參數,這個是必須的
         String fileName = request.getParameter("filename");
        // 轉碼String的getBytes()方法是 將一個 字符串 轉化爲用 系統默認的編碼 格式轉換爲一個 字節數組
        //fileName.getBytes("ISO-8859-1")就是把fileName這個字符串用iso-8859-1這個編碼轉換成一個字節數組
        //new String 是構造一個新的 String,方法是使用指定的 字符集 碼字的指 定子數組
         fileName=new String(fileName.getBytes("ISO-8859-1"),"utf-8");
 
這樣就能夠獲得不會亂碼的中文參數
相關文章
相關標籤/搜索