需求: 对一个文件进行基本读,写
思路: 应该先有数据才能读取,所以先写后读
1.使用write直接对文件进行写入(参数可以直接是字符串)
2.接下来的一个flush()方法进行刷新流,为什么要刷新呢?
因为对于缓冲区来讲,如果数据无法溢出缓冲区,数据就无法写入到文件,所以进行了一次刷新,保证数据到达.
3.进行读取,使用一个char数组作为缓冲区
4.进行sout读取数组中的内容
5.关闭流
代码如下:
//创建字符输出流
BufferedWriter bw = new BufferedWriter(new FileWriter(new File("d:/x.txt")));
//创建字符输入流
BufferedReader br = new BufferedReader(new FileReader(new File("d:/x.txt")));
//写内容
bw.write("天等烟雨,而我在等你.");
//很关键的一个刷新
bw.flush();
//char数组用来读取数据
char[] cbr = new char[1024];
//当读取到最后一个时,br.read(cbr)会返回-1,循环结束
while(br.read(cbr)!= -1){
//输出读取到的内容
System.out.println(new String(cbr));
}
//关闭流
bw.close();
br.close();
ps: 一定写完数据要刷新,调用flush();