IO分兩種流
位元組流 InputStream OutputStream
字元流 Reader Writer
他們都是抽象類別
具體實現
位元組流 FileInputStream FileOutputStream
字元流 FileReader FileWriter
位元組流轉換成字元流可以用 InputSteamReader OutputStreamWriter
轉換成BufferdReader BufferedWriter 他們具有緩衝區
例如:讀取檔案 從位元組流輸入到字元流輸入
定義一個位元組流: Java代碼
- FileInputStream fileInputStream = new FileInputStream("d:/text.txt"); // 定義一個指向D:/TEXT.TXT 的位元組流
-
- InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream);
- //位元組流轉換成InputStreamReader
-
- BufferedReader bufferedReader = new BufferedReader(inputSteamReader);
- //InputStreamReader 轉換成帶緩衝的bufferedReader
FileInputStream fileInputStream = new FileInputStream("d:/text.txt"); // 定義一個指向D:/TEXT.TXT 的位元組流InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream);//位元組流轉換成InputStreamReaderBufferedReader bufferedReader = new BufferedReader(inputSteamReader);//InputStreamReader 轉換成帶緩衝的bufferedReader
可以把讀出來的內容賦值給字元 Java代碼
-
- String ss = new String();
- String s;
- while((s = bufferedReader.readLine())!=null){
- ss += s;
- }
String ss = new String();String s;while((s = bufferedReader.readLine())!=null){ss += s;}
例如:寫入檔案 從位元組流輸出到字元流輸出 Java代碼
-
- FileOutputStream fileOutputStream = new FileOutputStream("d:/text.txt"); //定義一個
-
- 指向D:/TEXT.TXT檔案
-
- OutputStreamWriter outputStreamWriter = new OutputStreamWriter(fileOutputStream);
-
- BufferedWriter bufferedWriter = new BufferedWriter(outputStreamWriter);
-
- bufferedWriter.write(s);
-
- bufferedWriter.close();
- outputStreamWriter.close();
- fileOutputStream.close();