IO流讀寫中可能會出現亂碼的原因:
①編碼和解碼規則不一致
②這個字元編碼不支援某種語言(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知識請關注java基礎教程欄位。
以上是java中IO流亂碼的原因與避免方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!