我希望从本地和远程复制文件,文件都很大,10G级的,如何快速的复制?看网上有人说使用管道到管道,这确实比其他的快,不知道fastcopy是怎样实现的 本地远程复制大文件啊,而且还是10G这么大的。你看看迅雷啊,他是多部分一起传的。Java传输文件就是一般的文件操作啊,你可以模仿迅雷,开多个线程下载,每个线程记录下载部分的开始和结束索引,一起下到远程去。至于效率有多高,Java我还真不敢说,要不迅雷,快车这种工具怎么不用Java来开发。用FileChannel的transferTo(long position, long count, WritableByteChannel target)方法试试用FileChannel的transferTo(long position, long count, WritableByteChannel target)方法试试public static void main(String[] args)throws Exception{FileInputStream fileIn=new FileInputStream("d:/JavaTests/TestFileChannel.txt");FileOutputStream fileOut=new FileOutputStream("d:/JavaTests/TestFileOutputStreamCopyTime.txt");int i;long l=System.currentTimeMillis();while((i=fileIn.read())!=-1){fileOut.write(i);}System.out.println("Take time:"+(System.currentTimeMillis()-l)+"ms");//516msfileIn.close();本地远程复制大文件啊,而且还是10G这么大的。你看看迅雷啊,他是多部分一起传的。Java传输文件就是一般的文件操作啊,你可以模仿迅雷,开多个线程下载,每个线程记录下载部分的开始和结束索引,一起下到远程去。
温馨提示:答案为网友推荐,仅供参考