Java-IO-从键盘接收两个文件夹路径,把其中一个文件夹中(包含内容)
2018-01-11 16:38
309 查看
package cn.edu.lit.demo2; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.util.Scanner; /** * * @author 包子 * @version 1.0 */ public class Demo01 { public static void main(String[] args) throws IOException { System.out.println("请输入源文件夹的绝对路径:"); File srcDir = getDir(); System.out.println("请输入源文件夹的绝对路径:"); File destDir = getDir(); long start = System.currentTimeMillis(); copyFile(srcDir, destDir); long end = System.currentTimeMillis(); System.out.println(end-start); } /** * 键盘录入文件夹路径,判断路径是否合法 * @return File */ public static File getDir() { Scanner sc = new Scanner(System.in); while(true){ File file = new File(sc.nextLine()); if(!file.exists()) { System.out.println("文件夹不存在请重新输入"); }else if(file.isFile()) { System.out.println("输入的不是文件夹,请重新输入"); }else { return file; } } } /** * 复制文件 * @param srcDir 源路径 * @param sextDir 目的路径 * @throws IOException */ public static void copyFile(File srcDir, File destDir) throws IOException { BufferedInputStream bis = null; BufferedOutputStream bos = null; File[] files = srcDir.listFiles(); for(File f : files) { if(f.isDirectory()) { File file = new File(destDir+File.separator+f.getName()); file.mkdirs(); copyFile(f, file); }else { bis = new BufferedInputStream(new FileInputStream(f)); bos = new BufferedOutputStream(new FileOutputStream(new File(destDir.getAbsolutePath()+File.separator+f.getName()))); byte[] bytes = new byte[1024*1024*1024]; int len= 0; while((len=bis.read(bytes))!=-1) { bos.write(bytes,0,len); } bis.close(); bos.close(); } } } }
相关文章推荐
- 用IO 字符流进行从键盘接收两个文件夹路径,把其中一个文件夹中(包含内容)拷贝到另一个文件夹中
- Path,Files巩固,题目:从键盘接收两个文件夹路径,把其中一个文件夹中(包含内容)拷贝到另一个文件夹中
- 键盘录入一个文件夹路径,统计该文件夹(包含子文件夹)中每种类型的文件及个数,注意:用文件类型(后缀名,不包含.(点),如:"java","txt")作为key, 用个数作为value,放入到map集
- [置顶] 从键盘输入一个路径,统计该文件夹下制定扩展名文件的数量(其中文件夹下还包含子文件夹)
- 键盘录入两个文件路径,将其中一个文件夹中的所有的文件复制到另一个文件中
- 从键盘输入接收一个文件夹路径,打印出该文件夹下所有的.java文件名
- 键盘录入一个文件夹路径,统计该文件夹(包含子文件夹)中每种类型的文件及个数,注意:用文件类型(后缀名,不包含.(点),如:"java","txt")作为key
- 黑马程序员—这是一个能够键盘录入路径去批量修改指定文件夹下所有指定文件内容的方法
- 键盘录入一个文件夹路径,统计该文件夹(包含子文件夹)中每种类型的文件及个数
- java 从键盘输入一个关键字,在 D:盘查找文件,如果文件名中包含该关键字,则输出这个文件的绝对路径,如果都没有找到,则输出找不到相关信息。
- 从键盘接收一个文件夹路径,删除该文件夹
- javaIO—输出一个路径下的所有内容
- 从键盘接收一个文件夹路径,统计该文件夹大小
- 从键盘接收一个文件夹路径,把文件夹中的所有文件以及文件夹的名字按层级打印
- 从键盘接收一个文件夹路径,统计该文件夹大小
- IO之——键盘录入一个文件夹路径,统计该文件夹
- 从键盘输入接收一个文件夹路径,打印出该文件夹下所有的.txt文件名(后缀名文件)
- JAVA之File类-删除一个有内容的文件夹
- JAVA中申请了两个对象,分别在调用方法和声明方法中把其中一个对象直接赋值给另外一个对象,运行结果,求原理。
- Java IO把一个文件中的内容以字符串的形式读出来