Bootstrap

java图片复制(IO流实现)

一、字节流复制图片

public class Copy { 
	public static void main(String[] args) throws IOException { 
		// 1.创建流对象 
		// 1.1 指定数据源 
		FileInputStream fis = new FileInputStream("test.jpg"); 
		// 1.2 指定目的地 
		FileOutputStream fos = new FileOutputStream("test_copy.jpg"); 
		
		// 2.读写数据 
		// 2.1 定义数组 
		byte[] b = new byte[1024]; 
		// 2.2 定义长度 
		int len; 
		// 2.3 循环读取 
		while ((len = fis.read(b))!=1) { 
			// 2.4 写出数据 
			fos.write(b, 0 , len);
		}

		// 3.关闭资源 
		fos.close(); 
		fis.close(); 
	} 
}

二、字节缓冲流复制

public static void bufferedByteTest() throws IOException{
	long start = System.currentTimeMillis();
    // 创建输入流对象
    BufferedInputStream bufferedInputStream = new BufferedInputStream(new FileInputStream("yuan.jpg"));

	// 创建输出流对象
	BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(new FileOutputStream("copy.jpg"));

	// 读取数据
	int len;
	byte[] bytes = new byte[1024];
	while ((len = bufferedInputStream.read(bytes)) != -1){
		bufferedOutputStream.write(bytes,0,len);
    }
    System.out.println("耗时:" + (System.currentTimeMillis() - start));
        
    // 关闭流对象
    bufferedOutputStream.close();
    bufferedInputStream.close();
}
;