Java复制文件夹及文件到指定位置

您所在的位置:网站首页 iphone文件夹路径 Java复制文件夹及文件到指定位置

Java复制文件夹及文件到指定位置

2023-05-17 23:42| 来源: 网络整理| 查看: 265

Java实现复制文件夹及文件 思路: 1、首先创建一个复制文件夹的方法,复制文件夹并做判断 2、其次是创建一个复制文件夹中文件的方法

首先复制文件夹。判断是否是文件夹;再判断是否存在,不存在的要创建。

/** 复制文件夹 @param file 原文件夹 @param file1 复制后的文件夹 */ public static void copyDir(File file, File file1) { ///计算复制开始的时间 begin = System.currentTimeMillis(); if (!file.isDirectory()) { return; } if (!file1.exists()) { file1.mkdirs(); } File[] files = file.listFiles(); for (File f : files) { if (f.isDirectory()) { copyDir(f, new File(file1.getPath(), f.getName())); } else if (f.isFile()) { copyFile(f, new File(file1.getPath(), f.getName())); } } //计算复制完成的时间 end = System.currentTimeMillis(); }

其次是复制文件夹里面的内容。

/** 复制文件 @param file 原文件 @param file1 复制后的文件 */ public static void copyFile(File file, File file1) { try (FileInputStream fis = new FileInputStream(file); FileOutputStream fos = new FileOutputStream(file1)) { byte[] bys = new byte[1024]; int len; while ((len = fis.read(bys)) != -1) { fos.write(bys, 0, len); } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } }

整体代码

import java.io.*; import java.util.Scanner; /** * 复制目录 */ public class Test1 { public static long begin = 0; public static long end = 0; public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入你要复制原文件的路径:"); String s = sc.nextLine(); System.out.println("请输入你要复制到的路径:"); String s1 = sc.nextLine(); System.out.println("请输入你要复制的文件夹的名称:"); String name = sc.nextLine(); String path = s + "\\" + name; String path1 = s1 + "\\" + name; File file = new File(path); File file1 = new File(path1); copyDir(file, file1); System.out.println(" 共用时:" + (end - begin) + "ms"); System.out.println("复制完成!"); } /** * 复制文件 * @param file * @param file1 */ public static void copyFile(File file, File file1) { try (FileInputStream fis = new FileInputStream(file); FileOutputStream fos = new FileOutputStream(file1)) { byte[] bys = new byte[1024]; int len; while ((len = fis.read(bys)) != -1) { fos.write(bys, 0, len); } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } /** * 复制文件夹 * @param file * @param file1 */ public static void copyDir(File file, File file1) { begin = System.currentTimeMillis(); if (!file.isDirectory()) { return; } if (!file1.exists()) { file1.mkdirs(); } File[] files = file.listFiles(); for (File f : files) { if (f.isDirectory()) { copyDir(f, new File(file1.getPath(), f.getName())); } else if (f.isFile()) { copyFile(f, new File(file1.getPath(), f.getName())); } } end = System.currentTimeMillis(); } }


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3