java删除和拷贝文件递归实现方法简单点:程序自己调用自己
实现文件的删除和拷贝,代码如下:
package com.viita;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class Dptest {
//删除制定文件夹的所有文件及根文件夹
public void deleteFile(String path) {
// TODO Auto-generated method stub
File f = new File(path);
if(f.isDirectory())
{
File[] file = f.listFiles();
for (File file2 : file) {
this.deleteFile(file2.toString());
file2.delete();
}
}else
{
f.delete();
}
f.delete();
}
//拷贝整个文件夹的方法
public void copyFiles(String path1, String path2) throws Exception {
// TODO Auto-generated method stub
File file = new File(path1);
if(file.isDirectory())
{
File f = new File(path2);
if(!f.exists()) f.mkdir();
File[] files = file.listFiles();
for (File file2 : files) {
//System.out.println(file2.toString()+"-----"+path2+"/"+file2.getName());
copyFiles(file2.toString(),path2+"/"+file2.getName());
}
}else
{
copy(path1,path2);
}
}
//拷贝单个文件的方法
public void copy(String path1,String path2) throws IOException {
// TODO Auto-generated method stub
DataInputStream in = new DataInputStream(
new BufferedInputStream(
new FileInputStream(path1)));
byte[] date = new byte[in.available()];
in.read(date);
DataOutputStream out = new DataOutputStream(
new BufferedOutputStream(
new FileOutputStream(path2)));
out.write(date);
in.close();
out.close();
}
public static void main(String[] args) throws Exception {
Dptest dp = new Dptest();
dp.deleteFile("c:/wmpub");
// dp.copyFiles("c:/新建文件夹", "c:/xiao");
}
}
分享到:
相关推荐
这个"java 递归拷贝文件显示进度demo"是一个实用的示例,它不仅实现了从一个源目录到目标目录的深度拷贝,而且还提供了进度显示功能,这对于用户来说是一个很好的交互体验。以下是对这个Demo涉及知识点的详细解释: ...
`copyFile.java`源码文件为我们提供了一个基础的实现,通过理解和扩展这个代码,我们可以根据实际需求构建更强大、更高效的文件拷贝功能。在开发过程中,理解并掌握这些核心概念和方法,对于任何Java开发者来说都是...
- **拷贝文件/目录**:调用`boolean rename(Path src, Path dst)`,实现文件或目录的重命名(相当于拷贝并删除源文件)。 - **获取文件属性**:使用`FileStatus getFileStatus(Path f)`获取文件或目录的元数据信息。...
5. **移动、重命名和删除**:使用`rename()`, `moveFromLocalFile()`或`delete()`方法实现这些操作。例如: ```java fs.rename(srcPath, dstPath); fs.delete(path, true); // true表示递归删除 ``` 6. **列举...
在IT行业中,文件操作是日常开发中的基础任务之一,而“简单的文件拷贝 simpleFileCopy”这个项目就涉及到了如何在Java中实现文件和文件夹的复制功能。在这个过程中,我们通常会涉及到文件的比较、读取、写入等多个...
删除文件夹,递归删除目录下的所有文件及子目录下所有文件,函数名:getFile 作用:使用递归,输出指定文件夹内的所有文件 参数:path:文件夹路径 前置空格缩进,显示文件层次结构,通过文件名称获取导入文件到temp...
在Java编程中,文件夹复制是一项常见的操作,特别是在系统备份、数据迁移或者程序部署等场景。...`FileCopy.java`文件应该包含了上述逻辑,通过编译和运行此文件,你就能完成文件夹的复制与删除操作。
本文将详细介绍Java拷贝文件夹和删除文件夹的代码实例,包括文件夹的拷贝和删除整个文件夹的实现方法。 一、文件夹的拷贝 在Java中,拷贝文件夹需要使用File类和IO流。下面是一个基本的文件夹拷贝方法: ```java ...
批量拷贝文件的核心是编程实现文件或文件夹的复制功能。在Windows环境中,我们可以利用批处理脚本(Batch Script)或者Python、Java等编程语言来完成。这里以Python为例,介绍如何编写一个简单的批量拷贝文件的程序...
以上是Java中进行文件和目录操作的基本方法,实际开发中可能还需要考虑线程安全、异常处理、性能优化等方面的问题。同时,随着Java版本的更新,例如Java 7引入了`java.nio`包,提供了更高效、更易用的通道(Channels...
- **`FileVisitor`接口**:Java 7引入,用于递归遍历文件树,实现了该接口的对象可以访问每个文件和目录。 - **`Files.walkFileTree()`**:使用`FileVisitor`接口的便捷方法,可以自定义遍历规则。 6. **NIO.2...
- 对于文件,我们可以使用`java.nio.file.Files`类的`copy()`方法,它提供了在两个`Path`对象间拷贝文件的功能。注意,这需要Java 7及以上版本。 - 对于子目录,我们需要递归调用拷贝文件夹的函数,将子目录作为新...
1. 拷贝:Java通过`java.io.File`类和`java.nio.file.Files`类可以实现文件的拷贝。例如,使用`Files.copy()`方法可以方便地完成文件的复制操作,同时提供追加、覆盖等多种选项。 2. 新建:创建新文件可以通过`File`...
Java实现HTTP连接与浏览,Java源码下载,输入html文件地址或网址,显示页面和HTML源文件,一步步的实现过程请下载本实例的Java源码,代码中包括丰富的注释,对学习有帮助。 Java实现的FTP连接与数据浏览程序 1个...
操作系统课程设计的目标是让学生深入理解操作系统的基本原理和实现机制,特别是在文件管理系统方面。设计一个简单的二级文件系统,有助于学生巩固课堂所学,并提升实践技能。在这个设计中,我们需要实现几个核心功能...
根据给定的信息,本文将详细解释“拷贝文件技术”中的关键知识点,包括如何指定目录拷贝文件并更改文件名,以及如何删除垃圾文件。 ### 拷贝文件技术概述 在计算机科学中,文件拷贝是一项基本而重要的任务。在实际...
Java实现HTTP连接与浏览,Java源码下载,输入html文件地址或网址,显示页面和HTML源文件,一步步的实现过程请下载本实例的Java源码,代码中包括丰富的注释,对学习有帮助。 Java实现的FTP连接与数据浏览程序 1个...
Java实现HTTP连接与浏览,Java源码下载,输入html文件地址或网址,显示页面和HTML源文件,一步步的实现过程请下载本实例的Java源码,代码中包括丰富的注释,对学习有帮助。 Java实现的FTP连接与数据浏览程序 1个...