关键词:
需求:复制指定目录下的指定文件,并修改后缀名。
指定的文件是:.java文件。
指定的后缀名是:.jad
数据源所在文件夹:C:UsersAdministratorDesktop记录
目的地所在文件夹:C:UsersAdministratorDesktop新建文件夹copy
分析:
A:封装数据源的目录 B:封装目的地的目录
判断路径下的文件是否是文件夹
是:在目的文件夹下创建该文件,
获取数据源所在文件夹的所有文件的File数组
遍历File数组,得到每个文件的File对象
不是:再对其后缀进行判断是否是.java
是:进行改名并复制
不是:无视
代码:
1、首先写main方法:
1 public static void main(String[] args) throws IOException { 2 //封装目录 3 File start = new File("C:\Users\Administrator\Desktop\记录"); 4 File end = new File("C:\Users\Administrator\Desktop\新建文件夹\copy"); 5 6 //如果目的地文件夹不存在,则创建 7 if(!end.exists()){ 8 end.mkdir(); 9 } 10 11 //复制文件夹 12 copyFolder(start,end); 13 }
2、判断是否是文件夹,并对文件夹进行复制的方法
1 private static void copyFolder(File start, File end) throws IOException { 2 // 由于start是文件夹,所以开始不必获取File数组,直接进行判断 3 if(start.isDirectory()){ 4 //是文件夹 5 6 //首先在目的文件夹下创建不同路径,同样名称的文件夹 7 File newFolder = new File(end,start.getName()); 8 newFolder.mkdir(); 9 10 //获取该文件夹下的所有文件或文件夹的File数组 11 File[] f = start.listFiles(); 12 for(File file : f){ 13 //再重新执行判断是否是文件夹 14 copyFolder(file,newFolder); 15 } 16 17 }else{ 18 //是文件 19 //判断是否是.java后缀的,是的话就改名,不是则丢掉 20 String name = start.getName(); 21 if(name.endsWith(".java")){ 22 String newname = name.replace(".java", ".jad"); 23 File newfile = new File(end,newname); 24 25 //进行复制 26 copyfile(start,newfile); 27 }
3、判断文件后缀是否是.java,并对它的数据进行复制
1 private static void copyfile(File start, File newfile) throws IOException { 2 //因为任意格式的,所以用缓冲字节流 3 BufferedInputStream bi = new BufferedInputStream(new FileInputStream(start)); 4 BufferedOutputStream bo = new BufferedOutputStream(new FileOutputStream(newfile)); 5 6 //获取数据 7 byte[] by = new byte[1024]; 8 int len = 0; 9 while((len = bi.read(by)) != -1){ 10 bo.write(by,0,len); 11 } 12 bi.close(); 13 bo.close(); 14 }
io流的练习2———复制单级文件夹中的文件
...面的所有文件复制到 C:UsersAdministratorDesktop新建文件夹copy文件夹中 分析: A:封装目录 B:获取该目录下的所有文件的File数组 C:遍历该集合,得到每一个File对象 D:把每个File复... 查看详情
io流的一些练习(代码片段)
1.复制文本文件importjava.io.*;/***复制文本文件(为操作方便本测试throws)*条件:此项目下有一个text文件*/publicclassCopyTextpublicstaticvoidmain(String[]args)throwsIOException//分析可知,可采用高效字符流来复制文件//创建高效字符输入流对象BufferedRe... 查看详情
java如何递归遍历多重目录下的指定格式文件复制到目标目录并改格式
...from为目录:fromPath=D:\abc;目录下有a.txt.,b.txt,c.html.d.java,文件夹(test)同时文件夹下同样f.txt,G..java等多种格式的,文件;目标目录E:\ABC;要求:.过滤源目录下的TXT格式文档并且复制到目标目录并改格式为.java,将源目录下的子目... 查看详情
复制指定目录下的指定文件,并修改后缀名很重要,也很难!!!
packagecn.idcast2;importjava.io.BufferedInputStream;importjava.io.BufferedOutputStream;importjava.io.File;importjava.io.FileInputStream;importjava.io.FileNotFoundException;importjava.io.FileOutputStre 查看详情
复制指定目录下的指定类型文件,并修改后缀名(代码片段)
packagecom.companyname.common.test;importjava.io.*;/***@Description*@AuthorCreatedbyshusheng.*@Email[email protected]*@Date2018/12/2*/publicclassCopyFolderDemopublicstaticvoidmain(String[]args)t 查看详情
用java实现将多级文件夹下的所有文件统一放到一个文件夹中
...次下了电影(男生懂得呦),每部电影都放在一个单独的文件夹里,看的时候很是不方便啊,一直重复着进入文件夹、后退,再进、再退的操作,而手动把这些电影全部复制出来又太繁琐。因此为了解决这个问题,用IO写了一个... 查看详情
批量复制指定目录下的文件,并统计执行时间(代码片段)
该脚本用于将指定目录下的文件复制到指定的目录,可指定复制的次数,并统计消耗的时间。比如想要大批量制造很多文件。遇到的问题是:如果for循环中,文件名有空格,则会报错:“找不到指定的文件”,那... 查看详情
javafileio练习题:把一个文件夹下的.java文件复制到另一个文件夹下的.txt文件
packagecom.swift;importjava.io.BufferedReader;importjava.io.BufferedWriter;importjava.io.File;importjava.io.FileInputStream;importjava.io.FileNotFoundException;importjava.io.FileOutputStream;importjav 查看详情
java基础io流复制键盘录入的目录,复制其中的.java文件到指定目录,指定目录中有重名,则改名对加密文件计算字母个数(代码片段)
packagecom.swift.jinji;importjava.io.BufferedInputStream;importjava.io.BufferedOutputStream;importjava.io.File;importjava.io.FileFilter;importjava.io.FileInputStream;importjava.io.FileNotFoundExceptio 查看详情
批量复制指定目录下的文件,并统计执行时间(代码片段)
该脚本用于将指定目录下的文件复制到指定的目录,可指定复制的次数,并统计消耗的时间。比如想要大批量制造很多文件。遇到的问题是:如果for循环中,文件名有空格,则会报错:“找不到指定的文件”,那... 查看详情
io流的文件复制(代码片段)
1、IO流的分类1.根据处理数据类型的不同分为:字符流:1)Reader读取字符流的抽象类 常用方法:read()读取单个字符read(char[]cbuf)将字符读入数组。 read(char[]cbuf,intoff,intlen)将字符读入数组的某... 查看详情
c实现简单的文件管理不含交互(代码片段)
...自定义内容(比如文件名:abc.txt)4、把上面所创建的文件复制到D盘5、对上面复制到D盘的文件进行文件内容的追加6、对D盘的文件实施改名操作7、实现从文件中搜索是否存在用 查看详情
将文件夹下的一级目录文件改名并移动目录
#此段代码实现将文件夹下的一级目录文件改名并移动目录#list=os.listdir(Datadir)#列出文件夹下所有的目录与文件#foriinrange(0,len(list)):#path=os.path.join(Datadir,list[i])#list2=os.listdir(path)#forjinrange(0,len(list2)):#path2=os.path.join(pat 查看详情
说说在python中如何复制、移动、改名以及删除文件或文件夹
参考技术A要实现复制、移动、改名以及删除文件或文件夹,需要用到shutil模块,shutil是shellutil的简写形式,表示shell工具。调用shutil.copy(source,destination)来实现复制文件或文件夹功能,依据destination进行区分:运行结果:注意:指... 查看详情
用bat复制指定文件到指定文件目录下的所有文件夹?
比如D盘里3个文件夹,分别为1、2、3.现在桌面上有一个123.txt文件。现在我自己做一个bat,使其内容是将桌面上的123.txt复制到D盘的3个文件夹中,请问应该如何写代码?不要以下代码:@echooffcopy123.txtD:\1\copy123.txtD:\2\cop... 查看详情
linux基础day06:文件管理02(代码片段)
...OPTION]...-tDIRECTORYSOURCE..(废物)cp选项-t目录源文件#cp选项复制谁复制到哪去#拷贝当前目录下的1.txt粘贴到/tmpcp1.txt/tmp#拷贝当前目录下的1.txt粘贴到当前目录下并改名为2.txtcp1.txt2.txt#拷贝当前目录下的1.txt粘贴到/opt底下改名为2.txtc... 查看详情
用excelvba获取指定目录下的文件名(包括文件夹名)
...并点击“打开”3、比如是需要复制输出c盘下的ProgamData中文件夹的名字4、在命令窗口中输入“cdc:\\ProgamData”5、点击“回车键”后出现下面情况6、然后输入“dir/b>d:21.xls”命令并点击“回车键”7、接着就在D盘出现名称为21的... 查看详情
io流简要总结
IO流小总结IO流的本质就是用于数据的传输,根据流的方向的不同,有输入流、输出流。根据数据类型的不同,又有字节流、字符流。字节流 字节输入流 InputStream 字节输出流&nb... 查看详情