import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;/*1. 准备一个内容大的文件,100M左右, * 比较字节流单字节拷贝和数组拷贝的效率,* 看看那种方式效率高.
*/public class Test1 {public static void main(String[] args) throws IOException {BufferedInputStream bis = new BufferedInputStream(new FileInputStream("C:\\Users\\Administrator\\Desktop\\Test\\1.wmv"));BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("C:\\Users\\Administrator\\Desktop\\Test\\tv\\a.wmv"));long sig = sig(bis, bos);long byte1 = byte1(bis, bos);System.out.println(sig>byte1 ?"单字节拷贝":"数组拷贝");bis.close();bos.close();}private static long byte1(BufferedInputStream bis, BufferedOutputStream bos) throws IOException {long s = System.currentTimeMillis();int len = 0;byte[] b = new byte[1024];while((len = bis.read(b))!=-1) {bos.write(b, 0, len);}long d = System.currentTimeMillis();// System.out.println(d-s);return d-s;}private static long sig(BufferedInputStream bis, BufferedOutputStream bos) throws IOException {long s = System.currentTimeMillis();int i = 0;while((i = bis.read()) != -1 ) {bos.write(i);}long d = System.currentTimeMillis();// System.out.println(d-s);return d-s;}
}