从字符输入流中读取文本,缓冲字符以便有效地读取字符、数组和行。
可以指定缓冲区大小,也可以使用默认大小。 对于大多数用途,默认值足够大。
通常,对 Reader 发出的每个读取请求都会导致对底层字符或字节流发出相应的读取请求。 因此,建议将 BufferedReader 包装在任何其 read() 操作可能代价高昂的 Reader 周围,例如 FileReaders 和 InputStreamReaders.
BufferedReader in
= new BufferedReader(new FileReader("foo.in"));
将缓冲来自指定文件的输入。 如果没有缓冲,每次调用 read() 或 readLine() 都可能导致从文件中读取字节,将其转换为字符,然后返回,这可能非常低效。
使用 DataInputStreams 进行文本输入的程序可以通过用适当的 BufferedReader 替换每个 DataInputStream 来本地化。
@Test
public void readFile01(){
String filePath = "C:\\Users\\JinZh\\IdeaProjects\\TestJa\\software\\copy_directory\\file02.txt";
BufferedReader bufferedReader = null;
try {
bufferedReader = new BufferedReader(new FileReader(filePath));
String data = null;
while ((data = bufferedReader.readLine())!= null){
System.out.println(data);
}
}catch (IOException e){
e.printStackTrace();
}finally {
try {
if(bufferedReader!=null){
bufferedReader.close();
}
}catch (IOException e){
e.printStackTrace();
}
}
}