javase复制文件夹

 1 package com.copyfile;
 2
 3 import java.io.File;
 4 import java.io.FileInputStream;
 5 import java.io.FileNotFoundException;
 6 import java.io.FileOutputStream;
 7 import java.io.IOException;
 8
 9 import org.junit.Test;
10
11 public class FileTraverse {
12
13     public static void main(String[] args) {
14         // TODO Auto-generated method stub
15         String file = "E:\\大数据资料\\视频\\01_十八掌教育_徐培成_大数据零基础教程\\01-Java基础\\Java基础第01天\\02-Java简介-DOS命令.avi";
16         reverse(file);
17         copyDir("D:\\arch", "e:\\arch");
18     }
19
20     /**
21      * 打印输出目录结构
22      *
23      * @param file
24      */
25     public static void reverse(String file) {
26         File dir = new File(file);
27         if (dir.exists()) {
28             System.out.println(dir.getAbsolutePath());
29             if (dir.isDirectory()) {
30                 File[] files = dir.listFiles();
31                 if (files != null && files.length > 0) {
32                     for (File f : files) {
33                         reverse(f.getAbsolutePath());
34                     }
35                 }
36             }
37         }
38     }
39
40     /**
41      * 复制文件夹
42      */
43     public static void copyDir(String file, String destDir) {
44         File f = new File(file);
45         if (f.exists()) {
46             // 如果是目录
47             if (f.isDirectory()) {
48                 // 创建新的目录
49                 File newFile = new File(destDir, f.getName());
50                 newFile.mkdir();
51                 File[] files = f.listFiles();
52                 if (files != null && files.length > 0) {
53                     for (File ff : files) {
54                         copyDir(ff.getAbsolutePath(), newFile.getAbsolutePath());
55                     }
56                 }
57             } else {
58                 copyFile(file, destDir);
59             }
60         }
61     }
62
63     // 复制文件
64     private static void copyFile(String srcfile, String destDir) {
65         try {
66             File file = new File(srcfile);
67             File newFile = new File(destDir, file.getName());
68             FileInputStream fis = new FileInputStream(file);
69             FileOutputStream fos = new FileOutputStream(newFile);
70             byte[] buf = new byte[1024];
71             int len = 0;
72             while((len=fis.read(buf)) != -1) {
73                 fos.write(buf, 0, len);
74             }
75             fis.close();
76             fos.close();
77         } catch (Exception e) {
78             // TODO Auto-generated catch block
79             e.printStackTrace();
80         }
81     }
82
83     @Test
84     public void test() {
85         copyFile("D:\\arch", "e:\\arch");
86     }
87 }
时间: 2024-10-24 01:18:08

javase复制文件夹的相关文章

node复制文件夹,压缩zip,上传

一:用到的模块和简单介绍 npm文档:request :node请求的模块,可以给用程序请求服务器的接口https://www.npmjs.com/package/requestfs:读写文件的,很常用https://www.npmjs.com/package/fspath:路径,各种给文件夹弄路径什么的https://www.npmjs.com/package/pathjs-cookie:获取cokie的,在请求的时候需要用到https://www.npmjs.com/package/js-c

Web 在线文件管理器学习笔记与总结(13)重命名文件夹(14)复制文件夹

(13)重命名文件夹 ① 重命名文件夹通过 rename($oldname,$newname) 实现 ② 检测文件夹名是否符合规范 ③ 检测当前目录中是否存在同名文件夹名称,如果不存在则重命名成功 index.php: <?php require 'dir.func.php'; require 'file.func.php'; require 'common.func.php'; $path = 'file'; $path = @$_REQUEST['path'][email protected

java复制文件夹及所有子目录和文件

package text; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.InputStrea

使用IO流对文件夹的复制(文件夹中带有子目录)

当我们要复制带有子目录的文件夹的时候,就必须使用递归,这样才能把全部的文件夹都复制到位 思路和步骤: 对于文件夹的复制,分2种情况               (1)当我们对文件进行遍历的时候,如果目标文件夹下的文件是个标准文件的话,我们就可以直接去做复制的动作,               (2)当目标文件中,是带有文件夹的文件,那么这个时候就需要对文件夹进行递归,直到最后它是个标准文件后,我们在做复制动作 有了上述的2种情况后,那么这个需求,需要提供2种方法,1是对标准文件的复制,2是对带有

PHP递归复制文件夹以及传输文件夹到其他服务器。

项目中需要复制整个文件夹,有时候还需要将整个文件夹传输到远程服务器. 这里就要递归遍历整个文件夹了,想看递归遍历文件夹的代码. function deepScanDir($dir) { $fileArr = array (); $dirArr = array (); $dir = rtrim($dir, '//'); if (is_dir($dir)) { $dirHandle = opendir($dir); while (false !== ($fileName = readdir($dir

PHP 查看文件夹大小、复制文件夹、删除文件夹

PHP虽然提供了 filesize.copy.unlink 等文件操作的函数,但是没有提供 dirsize.copydir.rmdirs 等文件夹操作的函数(rmdir也只能删除空目录).所以只能手动编写这些函数,主要的技巧是通过递归将问题逐层分解,直到分解成可以直接解决的最小子问题. ====================查看文件夹大小===================== 由于文件夹是没有大小的,平常所说的文件夹尺寸准确的说应该是文件夹中所有文件的总大小.所以只需要将文件夹逐层查找,统

c# 封装的文件夹操作类之复制文件夹

c#  封装的文件夹操作类之复制文件夹 一.复制文件夹原理: 1.递归遍历文件夹 2.复制文件 二.FolderHelper.cs 1 /// <summary> 2 /// 文件夹操作类 3 /// </summary> 4 public static class FolderHelper 5 { 6 /// <summary> 7 /// 复制文件夹 8 /// </summary> 9 /// <param name="sourceFo

C# 压缩 解压 复制文件夹

命名空间:namespace System.IO.Compression 压缩: //目标文件夹 string fileDirPath = "/Downloads/试题" + userId + "_" + courseId; string downPath = Server.MapPath(fileDirPath); if (!Directory.Exists(downPath)) { Directory.CreateDirectory(downPath); } S

复制文件夹中所有内容到指定位置

复制文件夹中所有内容到指定位置 /** * 复制文件夹下的所有文件到指定目录 * @param oldPath * @param newPath */ public static void copyFolder(String oldPath, String newPath) { try { // 如果文件夹不存在,则建立新文件夹 (new File(newPath)).mkdirs(); //读取整个文件夹的内容到file字符串数组,下面设置一个游标i,不停地向下移开始读这个数组 File fi