大文件复制

来源:互联网 发布:二维数组 matlab 编辑:程序博客网 时间:2024/06/05 14:49

文件的复制可以有多种方式,但考虑到性能与文件比较的大的情况,可以使用java的通道就行文件复制,代码如下:


FileChannel fcin = new FileInputStream(file).getChannel();FileChannel fcout = new FileOutputStream(new File(bakFileDir,file.getName())).getChannel();System.out.println("文件大小:"+fcin.size());long fileSize=fcin.size();ByteBuffer bb = ByteBuffer.allocate(1024);while (fcin.read(bb)!=-1){bb.flip();fcout.write(bb);bb.clear();//prepare for reading;清空缓冲区;} //fcin.transferTo(0, fcin.size(), fcout); //如查文件小于4g时可不用上边的循环,直接用此即可完成拷贝fcin.close();fcout.close();