1. 程式人生 > >緩衝流之字元緩衝流

緩衝流之字元緩衝流

字元緩衝流

 字元緩衝輸入流 BufferedReader

  字元緩衝輸出流 BufferedWriter

完成文字資料的高效的寫入與讀取的操作

1  字元緩衝輸出流 BufferedWriter

 

void newLine() 根據當前的系統,寫入一個換行符

public static void method01() throws IOException{
        //明確目的地
        FileWriter fw =new FileWriter("E:\\java\\demo01.txt");
        //新增緩衝流
BufferedWriter bw=new BufferedWriter(fw); //寫入檔案 // windows: \r\n // linux: \n // newline(); System.out.println(System.in); bw.write("你好"); bw.newLine(); bw.flush(); bw.write("java"); bw.newLine(); bw.flush(); bw.write(
"中國"); bw.newLine(); //釋放資源 bw.close(); }

2 字元緩衝輸入流BufferedReader

從字元輸入流中讀取文字,緩衝各個字元,從而實現字元、陣列和行的高效讀取。

public String readLine() 讀取一個文字行,包含該行內容的字串,不包含任何行終止符,如果已到達流末尾,則返回 null。

public static void method02() throws IOException{
        //明確資料來源
        FileReader fr=new FileReader("E:\\java\\demo01.txt");
        
//新增緩衝流 BufferedReader br=new BufferedReader(fr); //開始讀取檔案 String line=br.readLine(); System.out.println(line); line=br.readLine(); System.out.println(line); line=br.readLine(); System.out.println(line); line=br.readLine(); System.out.println(line); br.close(); } public static void method03() throws IOException{ //明確資料來源 FileReader fr=new FileReader("E:\\java\\demo01.txt"); //新增緩衝流 BufferedReader br=new BufferedReader(fr); //開始讀取檔案 String line=null; while((line=br.readLine())!=null){ System.out.print(line); } br.close(); }

3   使用字元緩衝流完成文字檔案的複製

public static void copy() throws IOException{
        //明確資料來源
        FileReader fr=new FileReader("E:\\java\\demo01.txt");
        BufferedReader br=new BufferedReader(fr);
        //明確目的地
        FileWriter fw=new FileWriter("E:\\java\\a\\demo01.txt");
        BufferedWriter bw=new BufferedWriter(fw);
        //開始複製
        String line=null;
        int linenum=0;
        while((line=br.readLine())!=null){
            linenum++;
            bw.write(linenum+" "+line);
            bw.newLine();
            bw.flush();
        }
        bw.close();
        br.close();
    }