
public?class?BufferedTest?{
????public?static?void?main(String[]?args)?{
????????FileOutputStream?fos?=?null;
????????FileOutputStream?fos2?=?null;
????????BufferedOutputStream?bos?=?null;
????????try?{
????????????fos?=?new?FileOutputStream("fix.txt");
????????????long?start=System.currentTimeMillis();
????????????for?(?int?i=0?;?i<=100000;?i++?????????)?{
????????????????fos.write('a');
????????????}
????????????long?end?=?System.currentTimeMillis();
????????????System.out.println("fix.txt不用緩沖流寫");
????????????long?time1?=(end-start);
????????????System.out.println("用時"+time1);
????????????bos?=?new?BufferedOutputStream(fos2);
????????????long?start2=System.currentTimeMillis();
????????????for?(?int?i=0?;?i<=100000;?i++?????????)?{
????????????????bos.write('a');
????????????}
//????????????bos.write('a');
????????????long?end2?=?System.currentTimeMillis();
????????????long?time2?=(end2-start2);
????????????System.out.println("fox.txt用緩沖流寫");
????????????System.out.println("用時"+time2);
????????????System.out.println("節(jié)約時間"+(time1-time2));
//????????????bos.flush();
????????????fos.close();
????????????fos2.close();
????????????bos.close();
????????}?catch?(FileNotFoundException?e)?{
????????????e.printStackTrace();
????????}?catch?(IOException?e)?{
????????????e.printStackTrace();
????????}
????}
}

2021-04-22
fos2 這個變量沒有進行初始化,所以在使用的時候報了空指針異常,fos2 初始化一下就好,就像你的fos變量一樣:
fos?=?
new
?FileOutputStream(
"fix.txt"
);