首页 > 编程语言 >java根据文件IO流实现文件拷贝

java根据文件IO流实现文件拷贝

时间:2023-05-30 17:33:05浏览次数:32  
标签:文件 java file copyFile IO copyToFile File new

代码实现如下

 1 /**
 2      * 作用:执行文件夹文件拷贝
 3      * @author qi
 4      * @param copyFile
 5      * @param copyToFile
 6      * @return void
 7      * */
 8     public static void copyDir(File copyFile,File copyToFile) throws IOException {
 9         //创建目标文件夹
10         copyToFile.mkdir();
11         //进入数据源
12         File[] files = copyFile.listFiles();
13         //遍历文件信息
14         for (File file : files) {
15             //当发现是文件时执行拷贝
16             if(file.isFile()){
17                 FileInputStream  fis = new FileInputStream(file);
18                 FileOutputStream fos = new FileOutputStream(new File(copyToFile,file.getName()));
19                 byte[] bytes =new byte[1024*1024*5];
20                 int len;
21                 while ((len = fis.read(bytes))!=-1){
22                     fos.write(bytes,0,len);
23                 }
24                 fis.close();
25                 fos.close();
26             }else {
27                 //当不是文件时递归调用
28                 copyDir(file,new File(copyFile,file.getName()));
29             }
30         }
31     }

 

标签:文件,java,file,copyFile,IO,copyToFile,File,new
From: https://www.cnblogs.com/qi-Blog/p/17443872.html

相关文章

  • npm install 安装报错 npm ERR [email protected]: Permission denied (publickey)
    错误描述PSD:\webstorm\vue-element-admin-i18n>npminstall--registry=https://registry.npm.taobao.`org```npmERR!code128npmERR!AnunknowngiterroroccurrednpmERR!commandgit--no-replace-objectsls-remotessh://[email protected]/nhn/raphael.gitn......
  • vscode配置单个cpp文件打断点的文件
    (51条消息)【工具】VScode设置断点调试(以cpp为例)_vdcode运行断点cpp_沙diao网友的博客-CSDN博客launch.json内容{//UseIntelliSensetolearnaboutpossibleattributes.//Hovertoviewdescriptionsofexistingattributes.//Formoreinformation,......
  • .net调用动态库NationECCode.dll使用电子凭证二维码解码接口
    .net调用动态库NationECCode.dll使用电子凭证二维码解码接口 C#.net调用示例代码:[DllImport("NationECCode.dll",CallingConvention=CallingConvention.StdCall)]publicstaticexternvoidNationEcTrans(stringurl,stringinput,IntPtroutput);......
  • Unity发布IOS发布Android版本出现屏幕问题 UGUI半屏被压缩 另一半黑屏
    项目场景:用Unity做的app发布的ios和Android版本,ui做屏幕自适应,来适配多机型,unity版本是2019.4,用的UGUI。问题描述:极个别机型有个偶发的问题,就是在app息屏,再开屏的时候,会出现半边屏幕被压缩,半边屏幕黑屏的问题,但是ui交互的位置还是正常的,bug效果图如下:跟这张图一样的<hrstyle="bor......
  • linux 中find命令查找到文件仅显示文件名、路径名、完整路径
     001、[root@PC1test3]#lstest1test2[root@PC1test3]#tree##测试数据.├──test1│  └──a.txt└──test2└──b.txt2directories,2files[root@PC1test3]#find./-name"*.txt"##一般显示模式./test1/a.txt......
  • java spring添加自义定拦截器后发生访问路径错误,状态码应该返回404时却返回200的bug
    javaspring添加自义定拦截器后发生访问路径错误,状态码应该返回404时却返回200的bug问题自义定拦截器LoginInterceptor继承HandlerInterceptor,自义定配置类继承WebMvcConfigurer。配置类中@OverridepublicvoidaddInterceptors(InterceptorRegistryregistry){......
  • catch( Exception e ) 中的 e 是什么
    catch(Exceptione)中的e是啥子意思,没错,这里的e就是一个类型为Exception的异常对象。当然异常类型和对象名都可以随着自己的需求偏好进行更换,只是大家都习惯了用e对异常对象进行命名而已。同时,既然它是对象,也有可能存在自己的方法不是,所以,下面列了几个相对常用的方法出......
  • uniapp条件编译文件夹,静态资源
    用于处理条件编译一些文件夹,防止小程序包过大,因为不同平台有些文件可能不需要 1、引入删除的npm包用于删除不需要的静态文件npminstallcopy-webpack-plugin--save-dev  2、创建build.js配置文件,叫啥都行,为了引入直接写vue.config.js里面也可以/***打包配置文件......
  • uiautomator2获取UIObject元素的属性info用法
    info是UIAutomator2中用来获取控件属性信息的方法。该方法可以获取到指定元素的一些属性信息,例如控件的文本、坐标、大小、类名、包名、是否可见等。使用该方法可以帮助我们更好的理解应用程序的UI结构,并找到需要操作的控件元素。d(text=element,instance=index).infoinfo是U......
  • java之多态
    多态分为:1.方法的重载和覆写:a.重载:可以在一个类中定义多个同名的方法,其参数类型、参数个数、返回值类型不同。注:方法不能只有返回值类型不同b.覆写:子类实现跟父类同样的方法2.对象的多态:a.向上转换:b.......