将指定目录(包含内容)复制到另一个目录中

原创 2018年04月15日 10:15:11
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

/*
 * 
 * 源目录		目标目录
 * 
 * 
 * 分析:
 * 		首先我们要获取源目录下所有的文件和子目录,
 * 				我们可以把源目录封装成一个File对象,
 * 				我们可以调用File类listFiles()方法,
 * 				我们可以获取源目录下所有的文件和子目录所对应的File对象。
 * 		如果我们获取到的是文件
 * 				先在目标目录中创建该文件所对应的目录,
 * 				进行文件的复制。
 * 		如果我们获取到的是子目录
 * 				看看子目录下面是否还有其他的文件和更深层次的子目录
 * 
 * 
 * 

 */
public class RecurrenceTest3 {
	public static void main(String[] args) throws IOException {
		// 源目录
		File src = new File("E:\\ceshi");
		// 目标目录
		File dest = new File("E:\\ceshi222");

		copyDir(src, dest);

	}

	public static void copyDir(File src, File dest) throws IOException {
		// 为了严谨起见,我们首先对源目录和目标目录进行判断,看他们到底是不是目录
		if (src.isDirectory() && dest.isDirectory()) {

			File newDir = new File(dest, src.getName());
			if (!newDir.exists()) {
				newDir.mkdir();
			}
			
			//获取源目录下所有的文件和子目录
			File[] files = src.listFiles();
			
			for (File file : files) {
				if(file.isFile()) {
					//创建字节输入流对象
					FileInputStream fis = new FileInputStream(file);
					//创建字节输出流对象
					FileOutputStream fos = new FileOutputStream(new File(newDir,file.getName()));
					
					int len;
					byte[] by = new byte[1024];
					while((len=fis.read(by)) != -1) {
						fos.write(by, 0, len);
					}
					fis.close();
					fos.close();
				}
				else if(file.isDirectory()) {
					copyDir(file,newDir);
				}
			}
		}
	}
}

CentOS6.7文件的创建复制与粘贴

vim (进入文件,没有则新建一个文件)1.输入文本 2.Esc键 3.: 4.wq(保存并退出) 5.回车pwd显示当前目录ls当前目录清单cp 1.txt /usr/2.txt (将1...
  • abecedarian_csdn
  • abecedarian_csdn
  • 2018-04-03 17:31:09
  • 97

centos7 实现跨终端bash命令,vim文本等的粘贴复制

跨终端复制粘贴,vim/bash命令复制粘贴
  • codingwill1991
  • codingwill1991
  • 2016-04-17 12:14:03
  • 5629

linux 操作系统中cat查看文件内容命令的使用

命令名称是:cat 命令所在路径是:/bin/cat 执行权限是:所有用户 语法:cat[文件名] 功能描述:显示文本内容,这个可以查看文本内容少的文件,不超过一页的内容 ...
  • u013519290
  • u013519290
  • 2016-07-22 14:22:17
  • 2371

9.cat — 读取或创建文件

cat命令的用途是连接文件或标准输入并打印。这个命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用。 命令格式:cat [选项] [文件]......
  • KingBoyWorld
  • KingBoyWorld
  • 2017-10-17 14:43:03
  • 377

Java复制文件夹的所有内容到指定文件夹

将指定文件夹的所有内容复制到指定文件夹中
  • cinvzi_
  • cinvzi_
  • 2016-06-30 15:38:53
  • 449

拷贝指定文件之外的所有文件到指定目录

 ls ${S}tonly_etc | grep -v "^dnsmasq.conf" "^hostapd_mtk.conf" | xargs -i cp -rf ${S}tonly_etc/{...
  • huashibuliao
  • huashibuliao
  • 2017-11-29 15:14:54
  • 48

php关于一个文件夹所有的文件复制到另一个文件夹里面去,相同的文件名覆盖

function copyF($dir,$toDir){       foreach (glob($dir."/*") as $val) {         if(is_dir($val)){ ...
  • FireflyLJW
  • FireflyLJW
  • 2017-11-29 17:09:33
  • 319

linux下将一个目录中文件复制到另一个目录中

  • 2013年06月12日 18:37
  • 993B
  • 下载

CENTOS中文件新建、删除、移动、复制等命令

1.  (1)、首先说一下touch 创建文件的命令,touch可以用于创建二进制文件,用法非常简单。用法:touch+文件名,touch与文件名之间一定要有空格。  (2)、touch abc 创建...
  • xulXl
  • xulXl
  • 2017-05-10 00:23:53
  • 8012

CentOS 复制文件与文件夹

复制文件与文件夹的CentOS常用命令 cp NO1. 复制指定目录的文件到当前目录,并重命名 [root@rehat root]# cp ~/.bashrc bashrc_bak NO2...
  • load_life
  • load_life
  • 2012-11-20 10:34:15
  • 12068
收藏助手
不良信息举报
您举报文章:将指定目录(包含内容)复制到另一个目录中
举报原因:
原因补充:

(最多只允许输入30个字)