IO流中字节流InputStream和OutputStream的使用

将某个目录下的.java的所有文件复制到另一个目录下,子目录文件也要复制

思路分析:

1.需要复制给点目录以及子目录,需要递归
2.找到所有的.java文件必须取得文件名后在进行拆分,看是否为.java文件
3.要进行文件的复制,就需要使用输入流和输出流

问题要点

找到.java文件后如何在新目录中创建子目录来写入文件
如何递归创建文件夹

解决办法

首先定义需要复制的文件目录,定义后创建一个paste()无返回值方法,并且传入file对象;
在这里插入图片描述
在paste()方法中,先找到这个文件目录的子目录数组files,然后遍历该数组并且判断,如果子目录为目录的话就递归(为了寻找下层目录中的.java文件),如果不是目录就判断该文件的名字是否以.java结尾,是的话我们就将它复制到目标目录.这里我又创建一个方法来实现,pasteToDir();

在这里插入图片描述
在该方法中,先创建字节输入流对象inputStream,然后进行创建目录的操作;创建目录分为几步:第一步得到复制文件的全路径,然后修改replace当中的路径名为新目录(该目录用于存放复制文件)的路径名;第二步使用新路径来构造File类对象,这样我们就可以使用mkdirs()手动创建目录了;
创建完目录后就可以使用File类中的构造方法去创建新的文件了,文件名同复制文件;
以上就成功建好目录和文件了;最后就是构造OutputStream字节输出流对象来存入对应文件中的数据了.
该方法最大的好处是除了起始的盘符名字和目录名字不同外,可以将子目录以及子文件都复制到新的目录下,这样就没有打散原文件的整体结构,还成功把文件移动到新的位置了.

在这里插入图片描述

谢谢你这么好看还来努力学习,阅读我的文章,如果你觉得有用的话请点亮我的小星星,别吝啬你的赞美,我也会努力越做越好的,多做一些有价值的学习心得!!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值