2022.5.5I/O字符缓冲流
字符缓冲流
BufferedReader / BufferedWriter
高效读写、支持输入换行符、可一次写一行、读一行
-
BufferedReader 字符缓冲流读取文件
package com.xing.字符流;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
public class Demo04 {
public static void main(String[] args) throws IOException {
// 创建字符流
FileReader fr = new FileReader("d:\\zifu.txt");
//创建缓冲流
BufferedReader br = new BufferedReader(fr);
// 读取
// 1. 第一种方式 自己创建缓冲区
char[] buf = new char[1024];
int count = 0;//读取字符个数
while((count = br.read(buf)) != -1){
System.out.println(new String(buf, 0, count));
}
// 关闭
br.close();
}
}

package com.xing.字符流;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
public class Demo04 {
public static void main(String[] args) throws IOException {
// 创建字符输入流
FileReader fr = new FileReader("d:\\zifu.txt");
//创建输入缓冲区
BufferedReader br = new BufferedReader(fr);
// 读取
// 2. 第二种方式 一行一行读取 br.readLine():只能读一行 没有返回null 返回字符类型
String line = null;
while((line = br.readLine()) != null) {
System.out.println(line);
}
// 关闭
br.close();
}
}
-
BufferedWriter字符缓冲流写文件
package com.xing.字符流;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
public class Demo05 {
public static void main(String[] args) throws IOException {
// 1. 创建字符输出流
FileWriter fw = new FileWriter("d:\\buffer.txt");
//创建输出缓冲区
BufferedWriter bw = new BufferedWriter(fw);
// 2. 写入
for(int i = 0; i < 10; i ++){
bw.write("写入的内容");
bw.newLine(); // 写入一个换行符
bw.flush();
}
// 3. 关闭
bw.close(); // 此时会自动关闭fw
}
}


浙公网安备 33010602011771号