public?static?void?main(String[]?args)throws?IOException?{
String?srcFile="D:\\imooc\\1.jpg";
String?destFile="D:\\imooc\\2.jpg";
String?destFile2="D:\\imooc\\3.jpg";
long?start?=System.currentTimeMillis();
IOUtil.CopyFileByBuffer(new?File(srcFile),?new?File(destFile));
long?end?=System.currentTimeMillis();
System.out.println(end-start);
long?start2?=System.currentTimeMillis();
IOUtil.copyFile(new?File(srcFile),?new?File(destFile2));
long?end2?=System.currentTimeMillis();
System.out.println(end2-start2);
}
緩沖區(qū)設(shè)置都是1024?為啥用byByte只用50ms?而Buffered要用10318ms
2017-06-09
比如從一個缸往另一個缸中倒水,前者直接到,后者是有緩沖區(qū)的,相當(dāng)于一個桶,然后往桶里加水,然后再往另一個缸中到。 ?字節(jié)數(shù)組最快(批量),有緩沖區(qū)的次之(一杯一杯加到桶里再將桶中的倒入缸中),一個字節(jié)一個字節(jié)最慢(相當(dāng)于一杯一杯)。 ?太詳細的有點啰嗦,將就看吧。