同学:
FileWriter fw = new FileWriter("demo.txt");
fw.write("abcde");
//刷新流对象中的缓冲区中的数据。把流里面的数据放到文件里去用flush(刷新)()方法,,流对象进内存以后,,他内部有缓冲区,临时存放数据,你想把这些数据放到文件中去只要flush,他就会清空,,叫做将缓冲区里面临时存放的数据弄到文件里去
//将缓冲区里的数据刷到目的地中。
fw.flush(); 文件里有数据了
fw.close();
说明流里面是有缓冲区的,,,他把你写入到流中的数据先存储起来,,,,当你调用falush或者close方法时他会一次性的把流当中缓冲区里的数据刷新到文件里,,,,
流对象里有个缓冲区,那个缓冲区是个字符数组
那为什么需要缓冲区呢???
答:
字符流他其实一样走的是字节,但是他需要把字节临时存起来,,一个中文有2个字节我从硬盘里读一个字节以后还不能立刻操作,因为半个中文操作不了,所以我读完一个字节以后我又读了一个字节,,把这2个字节临时存起来以后就去查ascll表了,,查完表就找到一个对应字符,,这就有了临时存储,,字符流缓冲区里面有个数组就是用来临时存储数据的 |