本文共 1449 字,大约阅读时间需要 4 分钟。
import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.nio.ByteBuffer;import java.nio.channels.FileChannel;public final class Main { private Main() { throw new AssertionError(); } /** * IO文件拷贝 * @param source 被拷贝的源文件 * @param target 拷贝出来的目的文件 * @throws IOException */ public static void fileCopy(String source, String target) throws IOException { InputStream in = new FileInputStream(source); OutputStream out = new FileOutputStream(target); byte[] buffer = new byte[4096]; int bytesToRead; while((bytesToRead = in.read(buffer)) != -1) { out.write(buffer, 0, bytesToRead); } }/** * nio实现文件拷贝 * @param source * @param target * @throws IOException */ public static void fileCopyNIO(String source, String target) throws IOException { FileInputStream in = new FileInputStream(source); FileOutputStream out = new FileOutputStream(target); FileChannel inChannel = in.getChannel(); FileChannel outChannel = out.getChannel(); ByteBuffer buffer = ByteBuffer.allocate(4096); while(inChannel.read(buffer) != -1) { buffer.flip(); outChannel.write(buffer); buffer.clear(); } }}
转载地址:http://epdfx.baihongyu.com/