字符缓冲流

我们需要学习跟字符缓冲流相关的两个类,分别是BufferedReader、BufferedWriter

BufferedReader类在java.io包下。该类的直接子类是LineNumberReader

BufferedReader类继承了Reader,BufferedReader的作用是从字符输入流读取文本,缓存字符,以提供字符,数组和行的高效读取

BufferedReader类可以指定缓冲区大小,或者使用默认大小。默认值足够大,可用于大多数用途

BufferedReader有两个构造方法,如下

字符缓冲输入流的构造方法描述
BufferedReader(Reader in)创建使用默认大小的输入缓冲区的缓冲字符输入流
BufferedReader(Reader in, int sz)创建使用指定大小的输入缓冲区的缓冲字符输入流

 

BufferedWriter类在java.io包下。该类的所有实现接口为Closeable、Flushable、Appendable、AutoCloseable

BufferedWriter类继承了Writer,BufferedWriter的作用是将文本写入字符输出流,缓冲字符,以便有效地写入单个字符,数组和字符串

BufferedWriter类可以指定缓冲区大小,或者可以接受默认大小。 对于大多数用途,默认值足够大

BufferedWriter有两个构造方法,如下

字符缓冲输出流的构造方法描述
BufferedWriter(Writer out)创建使用默认大小的输出缓冲区的缓冲字符输出流
BufferedWriter(Writer out, int sz)创建一个使用给定大小的输出缓冲区的新缓冲字符输出流

 

字符缓冲流的练习

 

字符缓冲流复制Java文件

案例:复制Java文件 需求:把"D:\huanf\java\src\ch18_ch19储物区\bw.txt"复制到"D:\huanf\java\src\ch18_ch19储物区\JavaSE"里面

思路: 1、根据数据源创建字符缓冲输入流对象 2、根据目的地创建字符缓冲输出流对象 3、读写数据,复制文件 4、释放资源

 

字符缓冲流复制Java文件的练习

 

字符缓冲流特有功能

跟字符缓冲流相关的两个类,分别是BufferedReader、BufferedWriter

什么是行分隔符:例如\r、\r\n

BufferedWriter: 1、void newLine():写一行行分隔符,行分隔符字符串由系统属性定义

BufferedReader: 1、public String readLine():读一行文字。结果包含行的内容的字符串,不包括任何行终止字符,如果流的结尾已经到达,则为null

 

字符缓冲流特有功能的练习

 

字符缓冲流复制文件_改进版

使用字符缓冲流的特有功能来复制Java文件 需求:把"D:\huanf\java\src\ch18_ch19储物区\fos10.txt"复制到"D:\huanf\java\src\ch18_ch19储物区\JavaSE"里面

思路: 1、根据数据源创建字符缓冲输入流对象 2、根据目的地创建字符缓冲输出流对象 3、读写数据,复制文件。要求使用字符缓冲流的特有功能来实现 4、释放资源

 

字符缓冲流复制文件_改进版的练习