1. 程式人生 > >IO流字元流和位元組流的不同使用

IO流字元流和位元組流的不同使用

源頭: Reader (字元流) 和 InputStream(位元組流)
目標 Writer(字元流)和 OutputStream(位元組流)
裝置 鍵盤 硬碟 控制檯
高效率操作
字元流: BufferedReader BuffereWriter
位元組流 BuffereInputStream BuffereOutputStream

示例
需求 把一個純文字檔案資料儲存到另一個檔案

源頭 純文字使用Reader
裝置 硬碟 Reader 體系中可以操作硬碟的是 FileReader
是否需要高效率 是 使用BufferedReader緩衝區
FileReader fr=new FileReader(“檔案目錄”);
BuffereReader br=new BuffereReader (fr);

目標 純文字 使用Weiter
裝置 硬碟 Reader 體系中可以操作硬碟的是 FileWriter
是否需要高效率 是 使用BuffereWriter緩衝區
FileWriter fw=new FileWriter(“檔案目錄”);
BuffereWriter bw=new BuffereWriter(fw);

示例2
需求 在硬碟上考本一份mp3檔案

源頭 mp3檔案 使用 InputStream
裝置 硬碟 InputStream 可以操作硬碟的是 FileInputStream
是否需要高效操作 是: 使用BufferedInputStream

FileInputStream fs=new FileerInputStream(“檔案目錄”);
BufferedInputStream bis=new BufferedInputStream (fs);

目標 MP3檔案 使用 OutputStream
裝置硬碟 在OutputStream中使用FileOutputStream可以操作硬碟
當需要高效操作的時候使用BufferedOutputStream
FileOutputStream fos=new FileOutputStream(“檔案目錄”);
BufferedOutputStream bos=new BufferedOutputStream(fos);

相似操作同理分析