一、字符緩沖流
BufferedWriter:文本寫入字符輸出流,緩沖字符,以提供單個字符,陣列和字串的高效寫入,可以指定緩沖區大小,或者可以接受默認大小, 默認值足夠大,可用于大多數用途,
構造方法:
BufferedWriter(Writer out) | 創建使用默認大小的輸出緩沖區的緩沖字符輸出流, |
|---|---|
BufferedWriter(Writer out, int sz) |
創建一個新的緩沖字符輸出流,使用給定大小的輸出緩沖區, |
BufferedReader:從字符輸入流讀取文本,緩沖字符,以提供字符,陣列和行的高效讀取,可以指定緩沖區大小,或者可以使用默認大小, 默認值足夠大,可用于大多數用途,
構造方法:
BufferedReader(Reader in) | 創建使用默認大小的輸入緩沖區的緩沖字符輸入流, |
|---|---|
BufferedReader(Reader in, int sz) |
創建使用指定大小的輸入緩沖區的緩沖字符輸入流, |
例子-字符緩沖流實作復制Java檔案:
public class BufferedWriteReaderDemo {
public static void main(String[] args) throws IOException {
//使用字符緩沖流實作一個檔案的復制
//使用子類FileWrite\FileReader替代OutputStreamWrite\InputStreamReader
BufferedReader br=new BufferedReader(new FileReader("E:\\abc.txt"));
BufferedWriter bw=new BufferedWriter(new FileWriter("F:\\abcdef.txt"));
//讀取資料
// int len;
// while ((len=br.read())!=-1){
// bw.write(len);
// }
int len;
char[] ch=new char[1024];
while ((len=br.read(ch))!=-1){
bw.write(ch);
}
//釋放資源
br.close();
bw.close();
}
}
?
二、字符緩沖流的特有方法
BufferedWriter:
void newLine():寫一行行分隔符,行分隔符字串由系統屬性定義
BufferedReader:
public String readLine():讀一行文字,結果包含行的內容的字串,不包括任何行終止字符;如果流的結尾已經到達,則值為null
例子-字符緩沖流特有方法實作復制Java檔案:
public class Demo02 {
public static void main(String[] args) throws IOException {
//字符緩沖流特有方法實作復制Java檔案
BufferedReader br=new BufferedReader(new FileReader("E:\\abc.txt"));
BufferedWriter bw=new BufferedWriter(new FileWriter("F:\\aaa.txt"));
//讀寫資料
String line;
while ((line=br.readLine())!=null){
bw.write(line);
bw.newLine();//換行
bw.flush();//重繪快取區
}
//釋放資源
br.close();
bw.close();
}
}
字符流只能復制文本資料,有5種方式,一般采用字符緩沖流的特有功能
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/457549.html
標籤:其他
