java判斷獲取到的中文字串是否亂碼

2021-06-21 14:23:12 字數 727 閱讀 4257

/**  

* 用getbytes(encoding):返回字串的乙個byte陣列

* 當b[0]為 63時,應該是轉碼錯誤

* a、不亂碼的漢字字串:

* 1、encoding用gb2312時,每byte是負數;

* 2、encoding用iso8859_1時,b[i]全是63。

* b、亂碼的漢字字串:

* 1、encoding用iso8859_1時,每byte也是負數;

* 2、encoding用gb2312時,b[i]大部分是63。

* c、英文本串

* 1、encoding用iso8859_1和gb2312時,每byte都大於0;

* 總結:給定乙個字串,用getbytes("iso8859_1")

* 1、如果b[i]有63,不用轉碼; a-2

* 2、如果b[i]全大於0,那麼為英文本串,不用轉碼; b-1

* 3、如果b[i]有小於0的,那麼已經亂碼,要轉碼。 c-1

*/ private static string togb2312(string str)

} } catch (unsupportedencodingexception e)

return retstr;

}

java判斷獲取到的中文字串是否亂碼

用getbytes encoding 返回字串的乙個byte陣列 當b 0 為 63時,應該是轉碼錯誤 a 不亂碼的漢字字串 1 encoding用gb2312時,每byte是負數 2 encoding用iso8859 1時,b i 全是63。b 亂碼的漢字字串 1 encoding用iso8859...

java判斷中文字串長度

話不多說,上 獲取字串的長度,如果有中文,則每個中文字元計為2位 param value 指定的字串 return 字串的長度 public static intlength string value else return valuelength 得到乙個字串的長度,顯示的長度,乙個漢字或日韓文長...

Java判斷字串是否含有中文字元

最簡單的方法,雖然不嚴謹,但是在要求不高的情況下基本也夠用了.12 string str 測試中文 system.out.println str.getbytes length str.length 為true是則包含中文 getbytes public byte getbytes charset ...