import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.channels.FileChannel;
public class Test15 {
public static void main(String[] args) {
Test15.fileChannelCopy(new File("f:"+File.separator + "1.zip"),
new File("f:"+File.separator + "copy_1.zip"));
}
public static void fileChannelCopy(File s, File t) {
FileInputStream fi = null;
FileOutputStream fo = null;
FileChannel in = null;
FileChannel out = null;
try {
fi = new FileInputStream(s);
fo = new FileOutputStream(t);
in = fi.getChannel();//得到对应的文件通道
out = fo.getChannel();//得到对应的文件通道
in.transferTo(0, in.size(), out);//连接两个通道,并且从in通道读取,然后写入out通道
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
fi.close();
in.close();
fo.close();
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
java IO 最快文件复制 内存要求较高
最新推荐文章于 2024-06-19 23:15:34 发布
本文介绍了一个使用Java NIO包中的FileChannel进行文件复制的方法。通过FileInputStream和FileOutputStream获取文件通道,利用transferTo方法实现从源文件到目标文件的数据传输。文章提供了完整的代码示例,展示了如何高效地复制文件。
996

被折叠的 条评论
为什么被折叠?



