387字符缓冲输出流和388字符缓冲输入流
BufferedWriter--字符缓冲输出流
java.io.BufferedWriter extends writer
BufferedWriter:字符缓冲输出流
继承自父类的共性成员方法:
1、void write(int c):写单个字符
2、void write(char[] cbuf):写入字符数组
3、abstract void write (char[] cbuf,int off,int len);写入字符数组的某一部分,off数组的开始索引。len写的字符个数
4、void write(String str,int off,int len):写入字符串的某一部分,off字符串的开始索引,len写的字符个数
5、void write(String str):写入字符串
构造方法;
BufferedWrite(Writer out)创建一个使用默认大小输出缓冲区的缓冲字符输出流
BufferedWrite(Writer out,int sz):创建一个使用给定大小输出缓冲区的新缓冲字符输出流
参数:
Writer out:字符输出流
我们可以传递FileWriter,缓冲流会给FileWriter增加一个缓冲区,提高FileWriter的写入效率
int sz:指定缓冲区的大小,不写默认大小
特有成员:
void newline():写入一个行分隔符会根据不同的系统获取不同的行分隔符
使用步骤:
1、创建字符缓冲输出流对象,构造方法中传递字符输出流
2、调用字符缓冲输出流中的方法write,把数据写入到内存缓冲区中
3、调用字符缓冲输出流中的方法flush把内存缓冲区中的数据刷新到文件中
4、释放资源
public static void main(String[] args) throws IOException {
//创建字符缓冲输出流对象,构造方法中传递字符输出流
BufferedWriter bw=new BufferedWriter(new FileWriter("D:\\b.doc"));
//调用字符缓冲输出流中的方法write,把数据写入到内存缓冲区中
for (int i=0;i<10;i++){
bw.write("woshhinanhai");
bw.newLine();
}
bw.flush();
bw.close();
}
public class demo07 {
public static void main(String[] args) throws IOException {
//创建字符缓冲输入对象,构造方法中传第字符输入流
BufferedReader br=new BufferedReader(new FileReader("D:\\BaiduNetdiskDownload\\123.doc"));
//使用字符缓冲输入流对象中的方法read/readLine读取文本
String line;
while((line=br.readLine())!=null){
System.out.println(line);
br.close();
}
}
}
BufferedReader--字符缓冲输入流
/*
java.io.BufferedReader extends Reader
BufferedReader:字符缓冲输入流
继承自父类的共性成员方法:
int read() 读取单个字符并返回。
int read(char[] cbuf)一次读取多个字符,将字符读入数组。
void close() 关闭该流并释放与之关联的所有资源。
构造方法:
BufferedReader(Reader in) 创建一个使用默认大小输入缓冲区的缓冲字符输入流。
BufferedReader(Reader in, int sz) 创建一个使用指定大小输入缓冲区的缓冲字符输入流。
参数:
Reader in:字符输入流
我们可以传递FileReader,缓冲流会给FileReader增加一个缓冲区,提高FileReader的读取效率
特有的成员方法:
String readLine() 读取一个文本行。读取一行数据
行的终止符号:通过下列字符之一即可认为某行已终止:换行 ('\n')、回车 ('\r') 或回车后直接跟着换行(\r\n)。
返回值:
包含该行内容的字符串,不包含任何行终止符,如果已到达流末尾,则返回 null
使用步骤:
1.创建字符缓冲输入流对象,构造方法中传递字符输入流
2.使用字符缓冲输入流对象中的方法read/readLine读取文本
3.释放资源
*/
public class Demo04BufferedReader {
public static void main(String[] args) throws IOException {
//1.创建字符缓冲输入流对象,构造方法中传递字符输入流
BufferedReader br = new BufferedReader(new FileReader("D:\\b.txt"));
//2.使用字符缓冲输入流对象中的方法read/readLine读取文本
/*String line = br.readLine();
System.out.println(line);
line = br.readLine();
System.out.println(line);
line = br.readLine();
System.out.println(line);
line = br.readLine();
System.out.println(line);*/
/*
发下以上读取是一个重复的过程,所以可以使用循环优化
不知道文件中有多少行数据,所以使用while循环
while的结束条件,读取到null结束
*/
String line;
while((line = br.readLine())!=null){
System.out.println(line);
}
//3.释放资源
br.close();
}
}


浙公网安备 33010602011771号