為什麼IO流讀寫中可能會出現亂碼問題? ?是什麼原因?
1、編碼和解碼規則不一致
2、這個字元編碼不支援某種語言(ex:中文)
那我們該怎麼去盡可能的避免亂碼的情況呢? ?
1、編碼 : String ---> byte[]
String中有對應的方法:
①:byte[] getBytes() :使用平台的預設字元集將此String 編碼為byte 序列
②:byte[] getBytes(Charset charset) : 使用指定的字元編碼來編碼字串
③:byte[] getBytes(String charsetName) : 使用指定的字元編碼來編碼字串
2、解碼 : byte[] ---> String
# String中有對應的建構方法:
①:String(byte[] bytes) : 使用平台的預設字元集解碼指定的byte 陣列
②:String(byte[] bytes, Charset charset) : 使用指定的字元集來解碼指定的byte數組
③:String(byte[] bytes, String charsetName) : 使用指定的字元集來解碼指定的byte數組
以上是java中IO流讀寫亂碼是什麼原因?的詳細內容。更多資訊請關注PHP中文網其他相關文章!