FileOutputStream | BufferedOutputStream | |
是否含有缓存区 | 无 | 有,默认缓存区大小为8192byte,可通过构造函数自定义缓存区大小 |
flush方法 | 继承OutputStream类的flush方法,该类flush方法为空。 | 有flush方法,flush方法调用OutputStream类的write方法,将缓存区中的数据写入文件 |
write方法 | write一次写入文件一次 | writre方法将数据写入缓冲区,缓冲区满时将数据写入文件。 |
效率 | 低效,消耗资源 | 高效 |
总结:
FileOutputStream 文件输出流 ,无缓冲区,write一次,就往文件里面写一次数据,效率较低。
BufferedOutputStream 缓存输出流, 缓存区默认大小为8192byte,可通过构造函数定义。 write方法将数据写入缓存区中,缓存区满时写入文件。 flush方法将缓存区的数据写入文件。高效。