1、关闭eclipse,然后使用任意压缩软件,把eclipse文件夹及文件夹下的所有压缩缩成一个eclipse.zip 保存到D盘下面。分别使用 FileInputStream / FileOutputStream 及 BufferInputStream/BufferOutputStream 实现文件的复制。并输出两种方式复制文件的效率
参考代码:
参考一:如何实现使用 FileInputStream / FileOutputStream 复制文件
参考二:如何实现输出复制文件的效率
参考三:如何实现使用 BufferInputStream/BufferOutputStream 复制文件
package work1; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; public class Copy { public static void main(String[] args) throws IOException { File f1 = new File("d:/eclipse.zip");//源文件 File f2 = new File("d:/kk/eclipse1.zip");//方式一复制文件 File f3 = new File("d:/kk/eclipse2.zip");//方式二复制文件 //方式一复制文件 long t1 = System.currentTimeMillis(); FileInputStream fin = new FileInputStream(f1); FileOutputStream fout = new FileOutputStream(f2); byte[] b = new byte[1024]; int count1 = 0; if(f1.exists()) { System.out.println("方式一:使用 FileInputStream / FileOutputStream 实现文件的复制!"); while((count1 = fin.read(b, 0, b.length))!=-1) { fout.write(b, 0, count1); } fin.close(); fout.flush(); fout.close(); long t2 = System.currentTimeMillis(); if(f2.exists()) { System.out.println("方式一:文件复制成功!"); System.out.println("方式一:花费时间:"+(t2-t1)+"毫秒"); System.out.println(); }else { System.out.println("文件复制失败!"); } }else { System.out.println("文件不存在"); } //方式二复制文件 long t3 = System.currentTimeMillis(); BufferedInputStream bin = new BufferedInputStream(new FileInputStream(f1)); BufferedOutputStream bout = new BufferedOutputStream(new FileOutputStream(f3)); int count2 = 0; if(f1.exists()) { System.out.println("方式二:使用 BufferInputStream/BufferOutputStream 实现文件的复制!"); while((count2 = bin.read())!=-1) { bout.write(count2); bout.flush(); } bin.close(); bout.close(); long t4 = System.currentTimeMillis(); if(f3.exists()) { System.out.println("方式二:文件复制成功!"); System.out.println("方式二:花费时间:"+(t4-t3)+"毫秒"); }else { System.out.println("文件复制失败!"); } }else { System.out.println("文件不存在"); } } }
终于第一次是自己完成的作业,有点小小成就感。