`
wnzz95391511
  • 浏览: 126781 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java 实现 copy 文件夹功能

阅读更多
用java实现一个复制文件夹内容到另一个文件夹中的功能
/**
 * A class of dealing file
 * 
 * @author Meng Wang
 * 
 */
public class FileDeal {

	/**
	 * copy all files of a file path to another file path
	 * 
	 * @param fromFilePath
	 * @param toFilePath
	 */
	public void copyFileDir(String fromFilePath, String toFilePath) {
		File fromFileDir = new File(fromFilePath);
		File toFileDir = new File(toFilePath);

		// if new File Path is not exist,create it.
		if (!toFileDir.exists()) {
			toFileDir.mkdirs();
		}
		boolean isToFileSeparetor = isFileSeparetor(fromFilePath);
		boolean isFromFileSeparetor = isFileSeparetor(toFilePath);

		String[] childFileList = fromFileDir.list();

		for (String childFileString : childFileList) {
			File childFile = new File(fromFileDir.getPath() + File.separator
					+ childFileString);
			String fileName = childFile.getName();
			if (!childFile.isDirectory()) {
				try {
					FileInputStream fileInputStream = new FileInputStream(
							childFile);

					File toFile;
					if (isToFileSeparetor) {
						toFile = new File(toFilePath + fileName);
					} else {
						toFile = new File(toFilePath + File.separator
								+ fileName);
					}

					FileOutputStream fileOutputStream = new FileOutputStream(
							toFile);

					byte[] b = new byte[1024];

					try {
						while (fileInputStream.read(b) != -1) {
							fileOutputStream.write(b);
						}
						fileInputStream.close();
						fileOutputStream.flush();
						fileOutputStream.close();
					} catch (IOException e) {

						e.printStackTrace();
					}

				} catch (FileNotFoundException e) {
					System.err.print(e);
				}
			} else {
				String childFromFilePath = null;
				String childToFilePath = null;

				childFromFilePath = isFromFileSeparetor ? fromFilePath
						+ fileName : fromFilePath + File.separator + fileName;
				childToFilePath = isToFileSeparetor ? toFilePath + fileName
						: toFilePath + File.separator + fileName;

				copyFileDir(childFromFilePath, childToFilePath);
			}
		}

	}

	/**
	 * if the filePath is end with fileSeparetor sign
	 * @param toFilePath
	 * @return
	 */
	public boolean isFileSeparetor(String filePath) {
		if (filePath.lastIndexOf(File.separator) == filePath.length() - 1) {
			return true;
		} else {
			return false;
		}
	}

	public static void main(String[] args) {

		FileDeal fileDeal = new FileDeal();

		fileDeal.copyFileDir("E:\\my space", "E:\\wang space");

	}
}

分享到:
评论

相关推荐

    运用java压缩文件夹并备份至目标文件夹

    本文将详细讲解如何运用Java来实现文件夹的压缩,并将其备份到目标文件夹。首先,我们需要了解Java中用于处理压缩文件的核心库——`java.util.zip`。 在Java中,我们可以使用`ZipOutputStream`类来创建ZIP压缩文件...

    java实现文件夹复制

    以下将详细讲解如何使用Java实现文件夹的复制。 首先,我们需要理解文件和文件夹的基本操作。在Java中,`java.io`包提供了许多类来处理输入/输出流,如`File`类用于文件和目录的操作,`FileInputStream`和`...

    java实现文件和文件夹复制

    java文件夹和文件复制,

    java中实现复制文件和文件夹

    此外,Java 7及更高版本提供了`Files.copy()`方法,它可以更简洁地完成文件和文件夹的复制,同时支持追加模式、保留文件属性和异常处理等功能。例如: ```java import java.nio.file.Files; import java.nio.file....

    java文件夹的拷贝

    本文将深入探讨如何使用Java实现文件夹及其内容的完整拷贝。我们将基于给定的"java文件夹的拷贝"主题,以及提供的`copyFile.java`源码文件,来详细讲解相关知识点。 首先,我们需要理解Java I/O流的概念。在Java中...

    java实现对文件或文件夹的压缩和解压缩

    在标题中提到的"java实现对文件或文件夹的压缩和解压缩",我们可以使用这个库来实现。具体来说,我们可以创建一个`ZipUtil`类,里面包含压缩和解压缩的静态方法。 首先,为了压缩文件或文件夹,我们需要使用`org....

    java合并两个文件夹内容

    Java脚本由于其跨平台性和丰富的库支持,常被用于编写运维工具,实现文件管理、系统监控、数据处理等功能。 综上所述,Java提供了一套强大的文件操作API,能够方便地实现合并文件夹这样的任务。在实际应用中,我们...

    JAVA 对文件夹操作

    本文详细介绍了Java中对文件夹的基本操作,包括复制、删除以及压缩等功能的实现。通过具体的代码示例,我们不仅能够了解其实现原理,还能在实际项目中灵活运用这些技术。掌握了这些基础操作后,开发者可以在面对更...

    Java代码 可以压缩文件夹到指定目录和指定名称,将文件或者文件夹中的文件转成base64格式

    Java提供了多种方法来实现这一功能,比如使用内置的`java.util.zip`包或者第三方库如Apache Commons Compress。同时,将文件或文件夹中的文件转换为Base64编码是一种在内存中传输和存储二进制数据的有效方式,特别是...

    java实现一个目录下全部文件复制到另一目录

    以下将详细讲解如何实现这一功能,以及相关的Java API和技术点。 首先,我们需要使用`java.io.File`类来代表目录和文件。通过`File`对象,我们可以获取目录中的所有子文件和子目录。`listFiles()`方法用于获取指定...

    java文件和文件夹操作大全

    在Java中,创建文件夹与文件是基础而重要的功能。通过`java.io.File`类,我们可以轻松实现这些操作。 **创建文件夹示例**: ```java import java.io.*; public class CreateFolder { public static void main...

    java 实现文件夹的拷贝实例代码

    在Java编程中,有时我们需要实现文件或文件夹的拷贝功能。这个需求在处理大量数据迁移、备份或者软件部署时尤为常见。本篇文章将详细解释如何使用Java实现文件夹的拷贝实例代码。 首先,我们要了解Java中进行文件...

    Java实现Linux的远程拷贝

    在IT行业中,Java是一种广泛应用的编程语言,它不仅在企业级应用中表现出色,也能够实现各种系统级别的功能,如远程文件操作。本篇将详细探讨如何使用Java来实现Linux系统的远程拷贝功能。 首先,要实现Linux的远程...

    java文件夹及文件复制

    本教程将详细讲解如何使用Java的文件I/O(Input/Output)功能,通过递归的方式来实现文件及文件夹的复制,并着重关注在递归过程中变量属性的管理。 首先,我们需要理解Java中的`java.io`包,它提供了处理文件和流的...

    java写的ftp下载上传定时监控

    Java作为多平台支持的编程语言,提供了丰富的库和工具来实现FTP功能,包括下载、上传文件以及定时监控等操作。本篇文章将深入探讨如何使用Java进行FTP文件传输,并涉及自动解压和压缩的功能。 首先,让我们关注Java...

    java下载文件、图片、文件夹.docx

    本文将深入探讨如何使用Java实现这一功能,主要关注以下几个方面: 1. **获取资源路径**: 在Java中,我们经常需要从类路径(Classpath)中获取资源。`StaticUtils.class.getResource("/")` 用于获取类路径的根路径...

    java ftp服务器copy命令实现

    java程序调用API 实现在ftp内文件夹和文件的拷贝,ftp服务器之间的文件和文件夹的拷贝 欢迎来群:41229007 QQ:119346711讨论

    Java中实现复制文件或文件夹

    Java 中实现复制文件或文件夹 在 Java 中,实现复制文件或文件夹需要使用 File 类和流操作。下面将详细介绍如何实现复制文件或文件夹的步骤和相关知识点。 复制文件 复制文件的算法相对简单,可以使用缓冲流提高...

    JAVA代码实现远程操作服务器文件

    JAVA代码实现远程操作服务器文件是指使用JAVA语言实现远程操作服务器文件的功能,实现FTP,共享文件夹操作。该功能可以实现远程服务器文件的上传、下载、复制、移动、删除等操作。 description: 该实现使用了...

    Java拷贝文件夹和删除文件夹代码实例

    本文将详细介绍Java拷贝文件夹和删除文件夹的代码实例,包括文件夹的拷贝和删除整个文件夹的实现方法。 一、文件夹的拷贝 在Java中,拷贝文件夹需要使用File类和IO流。下面是一个基本的文件夹拷贝方法: ```java ...

Global site tag (gtag.js) - Google Analytics