為什么IO流讀寫中可能會(huì)出現(xiàn)亂碼問(wèn)題??是什么原因?
1、編碼和解碼規(guī)則不一致
2、這個(gè)字符編碼不支持某種語(yǔ)言(ex:中文)
那我們應(yīng)該怎么去盡可能的避免出現(xiàn)亂碼的情況呢??
1、編碼 : String —> byte[]
String中有對(duì)應(yīng)的方法:
①:byte[] getBytes() : 使用平臺(tái)的默認(rèn)字符集將此 String 編碼為 byte 序列
②:byte[] getBytes(Charset charset) : 使用指定的字符編碼來(lái)編碼字符串
③:byte[] getBytes(String charsetName) : 使用指定的字符編碼來(lái)編碼字符串
2、解碼 : byte[] —> String
String中有對(duì)應(yīng)的構(gòu)造方法:
①:String(byte[] bytes) : 通過(guò)使用平臺(tái)的默認(rèn)字符集解碼指定的 byte 數(shù)組
②:String(byte[] bytes, Charset charset) : 使用指定的字符集來(lái)解碼指定的byte數(shù)組
③:String(byte[] bytes, String charsetName) : 使用指定的字符集來(lái)解碼指定的byte數(shù)組
推薦學(xué)習(xí):Java視頻教程