第一次,在一个房间,一位HR的注视下,一个人做完一套笔试题,有点紧张,结果不太好,下面是其中的一道题:
将某目录下的所有文件(可能也有文件夹)复制到其他目录。
import java.io.File; import java.io.IOException; import java.nio.file.Files; public class DirToDir { /** * 将某个目录下的文件及文件夹复制到其他目录下 * * @param path1 源文件夹路径 * @param path2 目标文件夹路径 */ public static void copyFile(String path1, String path2) { //要复制文件的的目录from File from = new File(path1); //获取目录下的文件和文件夹 String[] list = from.list(); //复制到目录to里 File to = new File(path2); //如果不存在就创建目录 if (!to.exists()) { to.mkdir(); } for (int i = 0; i < list.length; i++) { if (new File(path1 + File.separator + list[i]).isDirectory()) { // 如果是目录就递归调用 copyFile(path1 + File.separator + list[i], path2 + File.separator + list[i]); } if (new File(path1 + File.separator + list[i]).isFile()) { File source = new File(path1 + File.separator + list[i]); File target = new File(path2 + File.separator + list[i]); if (!target.exists()) { try { // 如果是文件就直接使用Files工具类直接复制过去 Files.copy(source.toPath(), target.toPath()); } catch (IOException e) { e.printStackTrace(); } } } } } public static void main(String[] args) { copyFile("D:\\java_core", "F:\\"); } } |
这道题空白了,连一点思路都没有写上去,咕叽叽~~~~~,现在把它干掉,加油!