java 字节拷贝_java之使用字节缓冲流复制文件的简单介绍

本文介绍了如何利用Java的BufferedInputStream和BufferedOutputStream实现文件高效复制。通过创建字节缓冲输入流和输出流对象,读取并写入数据,提高了文件复制的效率。代码示例展示了从C盘复制1.gif到D盘的过程,并计算了复制所用时间。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

各位小伙伴们大家好,在之前的文章中小编介绍了java之字节缓冲输出流,BufferedOutputStream的简单介绍和java之字节缓冲输入流,BufferedInputStream的简单介绍,这次小编要介绍的是利用这两个字节缓冲流来复制文件,具体如下:

文件复制:一读一写

明确,数据源:c:\\1.jpg,数据的目的地:d:\\1.jpg

文件复制的步骤:

1.创建字节缓冲输入流对象,构造方法中传递字节输入流

2.创建字节缓冲输出流对象,构造方法中传递字节输出流

3.使用字节缓冲输出流对象中的方法read,读取文件

4.使用字节缓冲输出流中的方法write,把读取的数据写入到内部缓冲区中

5.释放资源(会先把缓冲区中的数据,刷新到文件中)

e9346c114c877c22b2e56b451cb29e92.png

代码如下:

public class Demo02CopyFile {

public static void main(String args[]) throws IOException {

//获取毫秒值

long s=System.currentTimeMillis();

//1.创建字节缓冲输入流对象,构造方法中传递字节输入流

BufferedInputStream bis=new BufferedInputStream(new FileInputStream("C://1.gif"));

//2.创建字节缓冲输出流对象,构造方法中传递字节输出流

BufferedOutputStream bos=new BufferedOutputStream(new FileOutputStream("D://1.gif"));

//3.使用字节缓冲输出流对象中的方法read,读取文件

byte[] bytes=new byte[1024];

int len=0;

while((len=bis.read(bytes))!=-1) {

bos.write(bytes,0,len);

}

bos.close();

bis.close();

long e=System.currentTimeMillis();

System.out.println("复制文件共耗时:"+(e-s)+"毫秒");//2毫秒

}

}

使用字节缓冲流复制文件,其实和之前小编写的Java之文件复制的简单介绍原理是差不多的,只不过,多加了一个缓冲流,文件复制的效率会提高。关于使用字节缓冲流来复制文件,小编就先说到这里了,希望这篇文章可以帮到大家,也欢迎各位小伙伴补充和纠错。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值