1. 程式人生 > >Java——IO類,字符緩沖區

Java——IO類,字符緩沖區

lose 字符數 line stat public txt family .org oid

字符緩沖流
將文本寫入字符輸出流,緩沖各個字符,從而提供單個字符、數組和字符串的高效寫入
BufferedWriter(Writer out) ;
創建一個使用默認大小輸出緩沖區的緩沖字符輸出流。
BufferedWriter(Writer out, int sz);
創建一個使用給定大小輸出緩沖區的新緩沖字符輸出流。

//父類Writer中的方法
void
write(char[] cbuf) ;
寫入字符數組。
abstract void write(char[] cbuf, int off, int len) ;
寫入字符數組的某一部分。 //這個方法子類實現了
void write(int c) ;
寫入單個字符。
void write(String str) ;
寫入字符串。
void write(String str, int off, int len) ;
寫入字符串的某一部分。
void newLine()
寫入一個行分隔符。

int read()
讀取單個字符。
int read(char[] cbuf)
將字符讀入數組。
abstract int read(char[] cbuf, int off, int len)
將字符讀入數組的某一部分。 //子類BufferedReader實現
String readLine()
讀取一個文本行。如果已到達流末尾,則返回 null


public static void main(String[] args) throws IOException { /* BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter("4.txt")); String str = "你好,昆明"; bufferedWriter.write(str); bufferedWriter.newLine(); //直接寫入一個換行,不用考慮系統平臺 bufferedWriter.write(str); bufferedWriter.close(); */
BufferedReader bReader = new BufferedReader(new FileReader("4.txt")); /* char[] cbuf = new char[4]; bReader.read(cbuf); System.out.println(new String(cbuf)); */ //你好,昆
/* String readLine; while( ( readLine = bReader.readLine() ) != null){ System.out.println(readLine); } bReader.close();*/
//使用 BufferedReader BufferedWriter 復制 BufferedReader bufferedReader = new BufferedReader(new FileReader("11.java")); BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter("copy.java")); //逐行復制 String string = null;
while( (string = bufferedReader.readLine()) != null ){
bufferedWriter.write(string); bufferedWriter.newLine(); //讀完一行寫一行不會把回車換行寫進去,所有要自己寫換行 }
bufferedReader.close(); bufferedWriter.close(); } }






Java——IO類,字符緩沖區