老师帮忙看下代码

来源:3-16 自由编程

星星和猫看月亮

2019-12-02 23:01:22

package com.imooc.io;


import java.io.BufferedOutputStream;

import java.io.File;

import java.io.FileNotFoundException;

import java.io.FileOutputStream;

import java.io.IOException;


public class FileOutStreamDemo {


public static void main(String[] args) {

File f1 = new File("one.txt");

File f2 = new File("two.txt");

FileOutputStream fos, fos1;

BufferedOutputStream bos;


long time1, time2, endTime1, endTime2, startTime1, startTime2;

try {

// 不用缓冲流写文件

fos = new FileOutputStream(f1, true);

startTime1 = System.currentTimeMillis();

// byte[] arr=new byte[10000];

for (int i = 0; i <= 100000; i++) {

fos.write('Z');

}

endTime1 = System.currentTimeMillis();

time1 = endTime1 - startTime1;

System.out.println(f1.getName() + "不使用缓冲流来写用时为:" + time1);


// 用缓冲流写文件

fos1 = new FileOutputStream(f2, true);

bos = new BufferedOutputStream(fos1);

startTime2 = System.currentTimeMillis();

for (int i = 0; i <= 100000; i++) {

bos.write('B');

}

endTime2 = System.currentTimeMillis();

time2 = endTime2 - startTime2;

System.out.println(f2.getName() + "使用缓冲流来写用时:" + time2);

System.out.println("节省时间:" + (time1 - time2));


} catch (FileNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

}


}


}


写回答

1回答

好帮手慕酷酷

2019-12-03

同学你好,代码编写的不错,但是同学忘记编写关闭流的方法了。及时关闭流,避免一直占用系统内存,消耗资源等问题。

另外,流关闭的顺序:建议在关闭流时,先打开的后关闭,后打开的先关闭。就比如我们进行开门时,从大门打开,然后打开卧室门,进入房间,出去时,在我们进行关门时,就要先关卧室门,再关大门。

如:

http://img.mukewang.com/climg/5de5db5609250f9605430182.jpg

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

0

0 学习 · 11489 问题

查看课程