我有一個jsf應用程序,有國際用戶,所以形式輸入可以有像漢字和中國的非西方字符串 - 如果我打我的網址與..?q =東日本大頁面上的輸出是正確的,我看到q在我的表單輸入得到填充罰款。但是,如果我將相同的字符串輸入到表單中並提交,我的應用程序會在使用url中的填充參數構造url之後執行重定向(看起來多餘,但這是由於第三方集成),但重定向不是編碼正確的字符串。我有response.sendredirect與外國字符的網址 - 如何編碼?
url = new String(url.getBytes("ISO-8859-1"), "UTF-8");
response.sendRedirect(url);
但URL重定向結束是Q = ????我在String構造函數中使用了各種編碼字符串(在ISO和UTF-8中切換,並且在url中只是得到了一堆亂碼),但沒有一個可以用於我獲得的位置q =東日本大任何想法我需要做的是讓q =東日本大人在重定向中正確填充?謝謝。
感謝bobince - 是的,只是使用URLEncoder.encode(q,「UTF-8」),而不是直接將字符串弄亂,我自己解決了它。 – James 2011-04-26 21:05:52