緩衝流之字元緩衝流
阿新 • • 發佈:2019-01-04
字元緩衝流
字元緩衝輸入流 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(); }