用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.util.zip`。 在Java中,我们可以使用`ZipOutputStream`类来创建ZIP压缩文件...
以下将详细讲解如何使用Java实现文件夹的复制。 首先,我们需要理解文件和文件夹的基本操作。在Java中,`java.io`包提供了许多类来处理输入/输出流,如`File`类用于文件和目录的操作,`FileInputStream`和`...
java文件夹和文件复制,
此外,Java 7及更高版本提供了`Files.copy()`方法,它可以更简洁地完成文件和文件夹的复制,同时支持追加模式、保留文件属性和异常处理等功能。例如: ```java import java.nio.file.Files; import java.nio.file....
本文将深入探讨如何使用Java实现文件夹及其内容的完整拷贝。我们将基于给定的"java文件夹的拷贝"主题,以及提供的`copyFile.java`源码文件,来详细讲解相关知识点。 首先,我们需要理解Java I/O流的概念。在Java中...
在标题中提到的"java实现对文件或文件夹的压缩和解压缩",我们可以使用这个库来实现。具体来说,我们可以创建一个`ZipUtil`类,里面包含压缩和解压缩的静态方法。 首先,为了压缩文件或文件夹,我们需要使用`org....
Java脚本由于其跨平台性和丰富的库支持,常被用于编写运维工具,实现文件管理、系统监控、数据处理等功能。 综上所述,Java提供了一套强大的文件操作API,能够方便地实现合并文件夹这样的任务。在实际应用中,我们...
本文详细介绍了Java中对文件夹的基本操作,包括复制、删除以及压缩等功能的实现。通过具体的代码示例,我们不仅能够了解其实现原理,还能在实际项目中灵活运用这些技术。掌握了这些基础操作后,开发者可以在面对更...
Java提供了多种方法来实现这一功能,比如使用内置的`java.util.zip`包或者第三方库如Apache Commons Compress。同时,将文件或文件夹中的文件转换为Base64编码是一种在内存中传输和存储二进制数据的有效方式,特别是...
以下将详细讲解如何实现这一功能,以及相关的Java API和技术点。 首先,我们需要使用`java.io.File`类来代表目录和文件。通过`File`对象,我们可以获取目录中的所有子文件和子目录。`listFiles()`方法用于获取指定...
在Java中,创建文件夹与文件是基础而重要的功能。通过`java.io.File`类,我们可以轻松实现这些操作。 **创建文件夹示例**: ```java import java.io.*; public class CreateFolder { public static void main...
在Java编程中,有时我们需要实现文件或文件夹的拷贝功能。这个需求在处理大量数据迁移、备份或者软件部署时尤为常见。本篇文章将详细解释如何使用Java实现文件夹的拷贝实例代码。 首先,我们要了解Java中进行文件...
在IT行业中,Java是一种广泛应用的编程语言,它不仅在企业级应用中表现出色,也能够实现各种系统级别的功能,如远程文件操作。本篇将详细探讨如何使用Java来实现Linux系统的远程拷贝功能。 首先,要实现Linux的远程...
本教程将详细讲解如何使用Java的文件I/O(Input/Output)功能,通过递归的方式来实现文件及文件夹的复制,并着重关注在递归过程中变量属性的管理。 首先,我们需要理解Java中的`java.io`包,它提供了处理文件和流的...
Java作为多平台支持的编程语言,提供了丰富的库和工具来实现FTP功能,包括下载、上传文件以及定时监控等操作。本篇文章将深入探讨如何使用Java进行FTP文件传输,并涉及自动解压和压缩的功能。 首先,让我们关注Java...
本文将深入探讨如何使用Java实现这一功能,主要关注以下几个方面: 1. **获取资源路径**: 在Java中,我们经常需要从类路径(Classpath)中获取资源。`StaticUtils.class.getResource("/")` 用于获取类路径的根路径...
java程序调用API 实现在ftp内文件夹和文件的拷贝,ftp服务器之间的文件和文件夹的拷贝 欢迎来群:41229007 QQ:119346711讨论
Java 中实现复制文件或文件夹 在 Java 中,实现复制文件或文件夹需要使用 File 类和流操作。下面将详细介绍如何实现复制文件或文件夹的步骤和相关知识点。 复制文件 复制文件的算法相对简单,可以使用缓冲流提高...
JAVA代码实现远程操作服务器文件是指使用JAVA语言实现远程操作服务器文件的功能,实现FTP,共享文件夹操作。该功能可以实现远程服务器文件的上传、下载、复制、移动、删除等操作。 description: 该实现使用了...
本文将详细介绍Java拷贝文件夹和删除文件夹的代码实例,包括文件夹的拷贝和删除整个文件夹的实现方法。 一、文件夹的拷贝 在Java中,拷贝文件夹需要使用File类和IO流。下面是一个基本的文件夹拷贝方法: ```java ...