import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.nio.ByteBuffer; import java.nio.channels.FileChannel; public class FileCopy{ public static void main(String[] args){ if(isNull(args[0]) || isNull(args[1])){ System.out.println("args error."); return ; } long start = System.currentTimeMillis(); if("0".equals(args[1])) oldIOCopy(args[0], args[0] + "copy_0"); else newIOCopy(args[0], args[0] + "copy_1"); System.out.println(System.currentTimeMillis() - start); } static boolean isNull(String str){ if(null == str || "".equals(str.trim())) return true; else return false; } static void oldIOCopy(String name, String copy){ try{ File f = new File(name); File ftmp = new File(copy); FileInputStream in = new FileInputStream(f); FileOutputStream out = new FileOutputStream(ftmp); byte[] buff = new byte[1024]; int len = 0; while((len = in.read(buff)) != -1){ out.write(buff, 0, len); } out.close(); in.close(); }catch(Exception e){ System.out.println("Exception."); } } static void newIOCopy(String name, String copy){ try{ FileChannel in = new FileInputStream(new File(name)).getChannel(); FileChannel out = new FileOutputStream(new File(copy)).getChannel(); ByteBuffer buffer = ByteBuffer.allocate(1024); while(in.read(buffer) != -1){ buffer.flip(); // Prepare for writing out.write(buffer); buffer.clear();// Prepare for reading } out.close(); in.close(); }catch(Exception e){ System.out.println("Exception"); } } }
最近下载更多
gwl LV8
2020年9月3日
2293778908 LV12
2019年4月18日
xuzhicheng111 LV18
2018年2月9日
duofuge LV1
2017年8月11日
dagf113225 LV68
2017年8月6日
alexbrandon LV1
2017年7月31日
听雨落声 LV2
2016年8月23日
2010211122 LV15
2016年6月23日
qq773152 LV3
2015年12月4日
流浪者 LV29
2015年11月20日
最近浏览更多
神龙摆尾无拘束 LV2
2023年3月17日
912727849 LV3
2021年8月5日
xb1406112453 LV5
2021年3月20日
味卜鲜码 LV6
2020年8月14日
KKnight LV1
2020年6月20日
zhangshuang1
2020年6月11日
暂无贡献等级
346675489 LV2
2020年5月31日
wlfzuidaima LV1
2020年5月8日
放开那个难海纸 LV22
2019年9月30日
菜鸟真的是菜 LV8
2019年9月19日