package com.test;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
public class CopyFileUtil {
/**
* <p>
* 将sourceFolder文件夹下的内容复制到destinationFolder文件夹下
* </p>
* <p>
* 如destinationFolder文件夹不存在则自动创建
* </p>
*
* @param sourceFolder
* 源文件夹 如:C:\\aaa
* @param destinationFolder
* 目标文件夹 D:\\java
* @throws Exception
*/
public static void copyFolder(String sourceFolder, String destinationFolder)
throws Exception {
try {
new File(destinationFolder).mkdirs(); // 如果文件夹不存在 则建立新文件夹
File a = new File(sourceFolder);
String[] file = a.list();
File temp = null;
for (int i = 0; i < file.length; i++) {
if (sourceFolder.endsWith(File.separator)) {
System.out.println(sourceFolder + file[i]);
temp = new File(sourceFolder + file[i]);
} else {
System.out.println(File.separator);
temp = new File(sourceFolder + File.separator + file[i]);
}
if (temp.isFile()) {
FileInputStream input = new FileInputStream(temp);
//System.out.println(temp.getPath());
FileOutputStream output = new FileOutputStream(
destinationFolder + "/"
+ (temp.getName()).toString());
byte[] b = new byte[1024 * 5];
int len;
while ((len = input.read(b)) != -1) {
output.write(b, 0, len);
}
output.flush();
output.close();
input.close();
}
if (temp.isDirectory()) {// 如果是子文件夹
copyFolder(sourceFolder + "/" + file[i], destinationFolder
+ "/" + file[i]);
}
}
} catch (Exception e) {
throw new Exception("复制整个文件夹内容操作出错", e);
}
}
public static void main(String[] args) {
try {
copyFolder("E:\\百度网页\\百度指数搜索_java.files", "E:\\百度网页\\重新生产\\百度指数搜索_java.files");
} catch (Exception e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
本项目是用C语言编写的一个文件夹拷贝工具,它已经在Visual C++ 6.0环境下成功编译,能够有效地实现对文件及文件夹的拷贝功能。 首先,我们要理解C语言的基础知识,它是计算机编程的基础语言之一,以其简洁和高效...
这样,当你需要在不同地方进行文件或文件夹拷贝时,只需调用这个库的接口即可,简化了代码逻辑,提高了效率。 总的来说,`Qt`库提供了强大的文件和文件夹操作能力,开发者可以根据需求灵活运用这些API,实现各种...
标题中的“在局域网\本地实现 多线程文件夹拷贝”指的是一个编程项目,目的是优化在局域网或本地计算机之间的大量文件和文件夹的复制过程,通过使用多线程技术来提高拷贝效率。这个项目可能涉及到网络编程、多线程...
文件夹拷贝
《狂龙文件夹拷贝器V1.0》是一款专为用户设计的高效文件复制工具,旨在简化并加速批量文件的移动或复制过程。这款软件以其简洁的操作界面和强大的功能特性,深受用户喜爱。在日常工作中,我们经常需要将一个目录下的...
今天我们将深入探讨“IO进程线程Day5”中的核心知识点,包括文件夹拷贝、从文件读取数据到内存以及内存到文件的写入,以及父子进程间的消息传递。 首先,让我们关注文件夹拷贝这一过程。文件夹拷贝不仅仅是简单的...
网上好多负责文件夹的进度条写的都有问题,在此基础上,自己修改了一下,进度条可以完美显示出来,另外还加了一个label动态显示拷贝的文件名,用的多线程,里面一些细节大家还是要注意一下的。另外拷贝文件夹是是...
用java实现的文件和文件夹拷贝和转移
5. **资源管理**:在标题和描述中提到,运行程序时需要将`images`和`sounds`文件夹拷贝到`bin/debug`或`bin/Release`目录下。这是因为在编译后,程序引用的资源文件会被打包到这些目录下的可执行文件中,若不在相应...
2,把这个名为“Protel99汉化”的文件夹拷贝到硬盘上(因为刻录成光盘以后,文件属性都自动变为了只读)。 3,然后进这个“第三大步Protel99汉化”目录(从第一步开始,什么也不用改动),分别进各个目录里面, 把...
1. **文件夹拷贝**: 文件夹的拷贝通常涉及到递归操作,因为一个文件夹可能包含多个子文件夹和文件。`System.IO.DirectoryInfo`类提供了`CopyTo`方法,可以用来复制整个目录结构。以下是一个简单的文件夹拷贝示例:...
在Java编程语言中,文件和文件夹的拷贝是一个常见的任务,特别是...以上就是使用Java实现文件夹拷贝的关键知识点,包括传统I/O流和NIO的使用,以及递归处理和异常处理。在实际开发中,可以根据具体需求选择合适的方法。
文件夹拷贝及删除是常见的文件系统操作,NodeJS通过内置的fs(文件系统)模块提供了一系列用于执行这些操作的函数。fs模块是NodeJS的核心模块之一,它提供了丰富的API来与文件系统进行交互。 在这篇文章中,作者...
C# 文件工具类 实际项目使用 久经考验 文件读写 复制 删除 创建文件夹 判断文件扩展名等等
根据给定的信息,本文将详细解释如何使用C语言来遍历文件夹,并处理其中的文本文件。本程序主要涉及到了文件目录的操作、结构体的使用、条件判断与循环控制等核心概念。 ### 一、程序概述 该C语言程序旨在遍历指定...
1、直接将“test”文件夹拷贝到c:盘上即可使用。 2、本课件中所有程序都在MATLAB6.1中调试通过. 3、若要使用超级链接直接链接到MATLAB,应将MATLAB软件安装在c:盘上。本课件除第4、5、6、14讲链接 到MATLAB6.1外,...
android 拷贝文件的mk脚本,bin,lib