阅读背景:

java输入输出流复制文件所用时间对比_苏苏爱自由

来源:互联网 
package com.edu.xynu;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class IOUnitCopy {
	//按字节
	public static void copyByByte(File srcFile,File destFile) throws IOException{
		FileInputStream fis=new FileInputStream(srcFile);
		FileOutputStream fos=new FileOutputStream(destFile);
		int i;
		while((i=fis.read())!=-1){
			fos.write(i);
		}
		fis.close();
		fos.close();
	}
	//按字节数组
	public static void copyByByteArray(File srcFile,File destFile) throws IOException{
		FileInputStream fis=new FileInputStream(srcFile);
		FileOutputStream fos=new FileOutputStream(destFile);
		byte []buf=new byte[10*1024];
		int i;
		while((i=fis.read(buf, 0, buf.length))!=-1){
			fos.write(buf, 0, i);
		}
		fis.close();
		fos.close();
	}
	//字节缓冲流
	public static void copyByBuff(File srcFile,File destFile) throws IOException{
		BufferedInputStream bis=new BufferedInputStream(new FileInputStream(srcFile));
		BufferedOutputStream bos=new BufferedOutputStream(new FileOutputStream(destFile));
		int i;
		while((i=bis.read())!=-1){
			bos.write(i);
		}
		bos.flush();
		bis.close();
		bos.close();
	}
	//字节数组批量读取 缓冲输出流写入
	public static void copyByBuffArray(File srcFile,File destFile) throws IOException{
		FileInputStream bis=new FileInputStream(srcFile);
		BufferedOutputStream bos=new BufferedOutputStream(new FileOutputStream(destFile));
		byte [] buf=new byte[10*1024];
		int len;
		while((len=bis.read(buf,0,buf.length))!=-1){
			bos.write(buf,0,len);
		}
		bos.flush();
		bis.close();
		bos.close();
	}
}
package com.edu.xynu;

import java.io.BufferedI



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: