字符缓冲流
将文本写入字符输出流,缓冲各个字符,从而提供单个字符、数组和字符串的高效写入
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();
}
}
|