`
qepipnu
  • 浏览: 76378 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

java - 删除文件

阅读更多
java删除文件
package IO.file;

import java.io.File;

/**
* 删除文件和目录
* @author chen
*
*/
public class DeleteFileUtil {

/**
* 删除文件,可以是文件或文件夹
* @param fileName 要删除的文件名
* @return 删除成功返回true,否则返回false
*/
public static boolean delete(String fileName) {
File file = new File(fileName);
if(!file.exists()) {
System.out.println("删除文件失败:" + fileName + "不存在!");
return false;
} else {
if(file.isFile())
return deleteFile(fileName);
else
return deleteDirectory(fileName);
}
}

/**
* 删除单个文件
* @param fileName 要删除的文件的文件名
* @return 单个文件删除成功返回true,否则返回false
*/
public static boolean deleteFile(String fileName) {
File file = new File(fileName);
// 如果文件路径所对应的文件存在,并且是一个文件,则直接删除
if(file.exists() && file.isFile()) {
if(file.delete()) {
System.out.println("删除单个文件" + fileName + "成功!");
return true;
} else {
System.out.println("删除单个文件" + fileName + "失败!");
return false;
}
} else {
System.out.println("删除单个文件失败:" + fileName + "不存在!");
return false;
}
}


/**
* 删除目录及目录下的文件
* @param dir 要删除的目录的文件路径
* @return 目录删除成功返回true,否则返回false
*/
public static boolean deleteDirectory(String dir) {
// 如果dir不以文件分隔符结尾,自动添加文件分隔符
if(!dir.endsWith(File.separator))
dir = dir + File.separator;
File dirFile = new File(dir);
// 如果dir对应的文件不存在,或者不是一个目录,则退出
if((!dirFile.exists()) || (!dirFile.isDirectory())) {
System.out.println("删除目录失败:" + dir + "不存在!");
return false;
}
boolean flag = true;
// 删除文件夹中的所有文件包括子目录
File[] files = dirFile.listFiles();
for(int i = 0; i < files.length; i++) {
// 删除子文件
if(files[i].isFile()) {
flag = DeleteFileUtil.deleteFile(files[i].getAbsolutePath());
if(!flag)
break;
}
// 删除子目录
else if(files[i].isDirectory()) {
flag = DeleteFileUtil.deleteDirectory(files[i].getAbsolutePath());
if(!flag)
break;
}
}
if(!flag) {
System.out.println("删除目录失败!");
return false;
}
//删除当前目录
if(dirFile.delete()) {
System.out.println("删除目录" + dir + "成功!");
return true;
} else {
return false;
}
}

public static void main(String[] args) {
// 删除单个文件
String file = "c:/test/test0/test1/test2/testFile.txt";
DeleteFileUtil.deleteFile(file);
System.out.println();
// 删除一个目录
String dir = "c:/test/test0/test1";
DeleteFileUtil.deleteDirectory(dir);
System.out.println();
// 删除文件
dir = "c:/test/test0";
DeleteFileUtil.delete(dir);

}

}

分享到:
评论

相关推荐

    mongo-java-driver-3.2.2.jar.zip

    在本例中,我们讨论的是`mongo-java-driver`的版本3.2.2,它是一个包含MongoDB Java驱动程序的JAR文件。`mongo-java-driver-3.2.2.jar.zip`是一个压缩文件,其中包含`mongo-java-driver-3.2.2.jar`。要使用这个驱动...

    mysql-connector-java-8.0.21.jar

    1. **连接性**:它实现了JDBC接口,使得Java开发者可以通过标准的JDBC API连接到MySQL服务器,进行数据查询、插入、更新和删除等操作。 2. **性能优化**:MySQL Connector/J经过优化,可以充分利用MySQL的特性和...

    java-unrar-0.3.zip

    Java-unrar-0.3.zip 是一个专门为Java开发者设计的RAR文件解压缩工具包,它允许程序员在Java环境中处理RAR格式的压缩文件,而无需在系统中安装WinRAR这样的外部软件。这个工具包的主要功能是提供API接口,使得Java...

    mysql-connector-java-8.0.22.jar

    它使得Java开发者能够方便地在Java应用程序中执行SQL语句,进行数据查询、更新和删除等操作。8.0.22是这个驱动的一个特定版本,通常每个新版本会修复之前的问题,增加新的功能,或提升性能。 这个版本的MySQL ...

    mysql-connector-java-5.1.46-bin.jar和mysql-connector-java-5.1.27-bin.jar

    MySQL Connector/J是符合JDBC规范的MySQL驱动,允许Java应用通过JDBC API执行SQL语句,进行数据查询、插入、更新和删除。 3. **jar文件**: - `mysql-connector-java-5.1.46-bin.jar` 和 `mysql-connector-java-...

    mysql-connector-java-8.0.15.jar

    总的来说,MySQL Connector/J 8.0.15.jar 是 Java 开发人员连接到 MySQL 8.0 数据库的重要工具,它提供了全面的 JDBC 支持,让开发人员能够轻松地执行各种数据库操作,包括数据查询、插入、更新和删除。通过合理地...

    mysql-connector-java-5.0.3.zip

    这个zip文件包含了必要的Java类库(JAR文件),使得Java开发者能够利用JDBC(Java Database Connectivity)接口来执行SQL语句,进行数据查询、插入、更新和删除等操作。 描述中的"my-sql-driver"进一步确认了这个...

    mysql-connector-java-8.0.19.jar

    这样,开发者就能在Java环境中进行数据库操作,如CRUD(创建、读取、更新、删除)操作。 4. **连接池**:对于大型应用,通常会使用连接池来管理数据库连接,提高性能。例如,C3P0、HikariCP或Apache DBCP等连接池库...

    mysql-connector-java-5.1.34.jar

    这个JAR(Java Archive)文件包含了必要的类和资源,使得开发者能够在Java环境中执行SQL语句,进行数据查询、更新、插入和删除等操作。 首先,我们来详细了解一下`mysql-connector-java`。它是MySQL官方提供的Java ...

    mysql-connector-java-8.0.23.jar

    同时,压缩包中的`mysql-connector-java-8.0.23.jar.txt`文件可能是关于驱动的使用指南、版本说明或授权信息,对于初学者来说,阅读这些文档有助于更好地理解和使用该驱动。 总的来说,MySQL Connector/J 8.0.23是...

    mysql-connector-java-8.0.17.jar.zip

    它允许Java应用程序通过JDBC API与MySQL数据库进行通信,执行SQL查询、事务处理、数据插入、更新和删除等操作。MySQL Connector/J实现了JDBC接口,使得Java开发者可以使用标准的JDBC API来操作MySQL数据库,无需了解...

    java-ipfs-http-client-master_ipfs_java-ipfs_java_

    8. **事件监听**:Java IPFS HTTP客户端可能还提供事件监听功能,让你能够跟踪文件添加、删除等操作的状态。 在`java-ipfs-http-client-master`压缩包中,包含了这个库的源代码,你可以深入了解其实现细节,包括...

    mysql-connector-java-5.1.45-bin.jar

    这个"mysql-connector-java-5.1.45-bin.jar"文件是该驱动的一个特定版本,即5.1.45版。这个版本是纯净且正版的,适合于Java开发者在他们的项目中直接集成使用。 在Java编程中,为了连接到MySQL数据库,我们需要一个...

    mysql-connector-java-5.1.26-bin.zip

    将这个JAR文件添加到项目的类路径中后,就可以在Java代码中使用JDBC API来执行SQL查询、插入、更新和删除数据库记录。 在Java中,连接MySQL数据库的基本步骤如下: 1. 导入必要的JDBC包: ```java import java.sql...

    mysql-connector-java-5.1.10-bin.jar包下载

    MySQL Connector/J是MySQL数据库与Java应用程序之间的重要桥梁,它是一个实现了Java Database Connectivity (JDBC) API的驱动程序,使得Java开发者能够方便地在MySQL数据库上执行CRUD(创建、读取、更新、删除)操作...

    fastdfs-client-java-1.29-SNAPSHOT.jar

    首先,`fastdfs-client-java-1.29-SNAPSHOT.jar`是FastDFS的Java客户端实现,它提供了丰富的API供开发者调用,包括连接FastDFS服务器、文件上传、文件下载、文件删除等基本功能。这个版本的`SNAPSHOT`表示这是一个...

    java-property-utils-1.9.jar

    1. **动态加载和修改属性**:除了基本的加载和保存属性文件,该库允许在运行时动态地添加、修改或删除属性,无需每次都重新加载整个文件。 2. **类型转换**:默认的`Properties`类只能处理字符串类型的属性,但`...

    mysql-connector-java-5.0.8-bin.jar

    在版本5.0.8中,这个jar文件提供了一个稳定且功能丰富的接口,使得Java开发者能够轻松地在他们的应用程序中集成MySQL数据库。 MySQL数据库是一种广泛使用的开源关系型数据库管理系统,以其高性能、高可靠性及易于...

    mysql-connector-java-5.1.47.jar

    这个jar文件是MySQL官方提供的,支持JDBC(Java Database Connectivity)标准,使得Java编程语言与MySQL数据库之间的交互变得简单高效。 在Java开发环境中,`mysql-connector-java-5.1.47.jar` 文件是一个必不可少...

    fastdfs-client-java-master.zip

    标题中的"fastdfs-client-java-master.zip"是一个包含FastDFS客户端Java实现的压缩文件,这个库主要用来帮助Java应用程序与FastDFS分布式文件系统进行交互。FastDFS是一个开源的高性能、轻量级的分布式文件系统,...

Global site tag (gtag.js) - Google Analytics