java语言中,使用jdk提供的方法写文件一般有三种方式,关键类分别为FileOutputStream
,BufferedOutputStream
,FileWriter
。这几种方式在同等条件下的执行效率上一般是后者比前者高。
区别
BufferedOutputStream
是在FileOutputStream
的基础上利用利用装饰者模式进行了一层封装,当字节数达到缓存所能容纳的最大的限制时,才会输出到文件中,减少了底层资源的交互次数,一定程度上提升了执行效率。
但是这两个都有一个限制,就是需要写入的文件必须存在,如果不存在,会报FileNotfoundException
异常。而使用FileWriter
时,不比考虑此种情况,文件不存在时,会自动创建文件。