io流——處理流——轉換流
1.轉換流:位元組流轉換為字元流,為了處理亂碼(編碼集、解碼集)
2.編碼與解碼的概念
(1)編碼:字元 --------編碼字符集---------> 二進位制
(2)解碼:二進位制 -------解碼字符集-----------> 字元
3.亂碼的原因:
(1)編碼和解碼的字符集的不統一
//解碼:byte ---> char 我的ide預設解碼字符集為gbk
string str = "中國";
//編碼:char ---> byte
byte data = str.getbytes();
system.out.println(new string(data));
//設定與解碼字符集相同的編碼字符集 gbk
data = str.getbytes("gbk");
system.out.println(new string(data));
//設定編碼集為utf-8
data = str.getbytes("utf-8");
system.out.println(new string(data));
(2)位元組缺少,長度丟失
//解碼:byte ---> char 我的ide預設解碼字符集為gbk
string str = "中國";
//編碼:char ---> byte 設定與解碼字符集相同的編碼字符集 gbk
byte data = str.getbytes("gbk");
//當位元組缺失時產生亂碼
system.out.println(new string(data,0,1));
IO流(字元流 轉換流)
字元輸入流 public inputstreamreader inputstream in 預設的編碼格式 一般使用這個 public inputstreamreader inputstream in,string charsetname 指定的編碼格式 字元輸入流 位元組輸入流 編碼表 將位元組流...
IO流,字元流,位元組流,轉換流
io流的分類 輸入流 輸出流 說明 位元組流 inputstream outputstream 位元組流是處理位元組的 二進位制 字元流 reader writer 字元流是處理字元的 注 這幾個類都是抽象類。io解決問題 解決裝置與裝置之間 的資料傳輸問題。比如 硬碟 記憶體 記憶體 硬碟 輸入位...
java之IO流(緩衝流 轉換流)
緩衝流是在位元組流或字元流的基礎上,新增了乙個緩衝區。緩衝流相對於位元組流和字元流有一些優點 案例 try bufferedinputstream bis newbufferedinputstream new fileinputstream source bufferedoutputstream b...