首頁 >Java >Java基礎 >java判斷是否亂碼的方法

java判斷是否亂碼的方法

尚
原創
2019-12-05 10:17:483307瀏覽

java判斷是否亂碼的方法

專案中有一個功能 在IE中GET方式提交會產生亂碼 但有兩個入口都會走這同一段程式碼。

固不能直接轉碼,所以要進行判斷傳過來的該值是不是亂碼。

可用以下方式驗證:

java.nio.charset.Charset.forName("GBK").newEncoder().canEncode("测试") //判断是不是GBK编码 即是否乱码
//使用request.getQueryString()获取通过URL传过来的值 有可能是乱码 如:q=éæ¥
String s = request.getQueryString();   
if(s!=null){
	if(!(java.nio.charset.Charset.forName("GBK").newEncoder().canEncode(s))){
		try {
			s = new String(request.getQueryString().getBytes("ISO-8859-1"),"UTF-8");
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		}	
	}	
}

更多java知識請關注java基礎教學欄位。

以上是java判斷是否亂碼的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn