1、File类
2、IO流
3、FileWriter和BufferedWriter的区别在哪
FileWriter和BufferWriter写入的都是
字符流
FileWriter和BufferWriter都有缓冲区,FileWriter的缓冲区大小是8192个
字节
,BufferWriter缓冲区大小是8192个字符
FileWriter和BufferWriter调用write方法时都没有真正往硬盘里写数据,存入的都是缓冲区,只有调用flush或者close时才会刷新缓冲区并写入硬盘
FileWriter每次调用write()方法,就会调用一次OutputStreamWriter中的write()方法,而BufferedWriter只有在缓冲区满了才会调用
OutputStreamWriter中的write()方法。仔细看OutputStreamWriter方法介绍,它是用于给字符转码的,并且会在缓冲区累积。这两句话是重点了,FileWriter每调用一次write就会进行一次转码,而BufferedWriter只有在缓冲区满了才会转码,这才是BufferedWriter高效的真正原因;在缓冲区累积则代表他们并不是write一次就输出,而是flush或者close才进行写入硬盘