java编写程序实现文件拷贝_Java IO编程——文件拷贝

该博客介绍了如何使用Java编程实现文件和目录的拷贝功能。通过两种不同的方法,一是传统的字节流读写方式,二是利用InputStream的transferTo方法,详细展示了文件拷贝的完整过程,并提供了文件及目录拷贝的示例代码。还提醒注意不同Java版本中对于数据转存方法的支持,以及如何扩展实现目录拷贝的功能。
摘要由CSDN通过智能技术生成

在操作系统里面有一个copy命令,这个命令的主要功能是可以实现文件的拷贝处理,现在要求模拟这个命令,通过初始化参数输入拷贝的源文件路径与拷贝的目标路径实现文件的拷贝处理。

需求分析:

·需要实现文件的拷贝操作,那么这种拷贝就有可能拷贝各种类型的文件,所以肯定使用字节流;

·在进行拷贝的时候有可能需要考虑到大文件的拷贝问题;

实现方案:

·方案一:使用InputStream将全部要拷贝的内容直接读取到程序里面,而后一次性的输出到目标文件;

|- 如果现在拷贝的文件很大,基本上程序就死了;

·方案二:采用部分拷贝,读取一部分输出一部分数据,如果现在要采用第二种做法,核心的操作方法:

|- InputStream:public int read​(byte[] b) throws IOException;

|- OutputStream:public void write​(byte[] b,int off, int len) throws IOException;

范例:实现文件拷贝处理

8f900a89c6347c561fdf2122f13be562.png

961ddebeb323a10fe0623af514929fc1.png

1 importjava.io.File;2 importjava.io.FileInputStream;3 importjava.io.FileOutputStream;4 importjava.io.InputStream;5 importjava.io.OutputStream;6 class FileUtil { //定义一个文件操作的工具类

7 private File srcFile ; //源文件路径

8 private File desFile ; //目标文件路径

9 publicFileUtil(String src,String des) {10 this(new File(src),newFile(des)) ;11 }12 publicFileUtil(File srcFile,File desFile) {13 this.srcFile =srcFile ;14 this.desFile =desFile ;15 }16 public boolean copy() throws Exception { //文件拷贝处理

17 if (!this.srcFile.exists()) { //源文件必须存在!

18 System.out.println("拷贝的源文件不存在!");19 return false ; //拷贝失败

20 }21 if (!this.desFile.getParentFile().exists()) {22 this.desFile.getParentFil

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值