<div class="iteye-blog-content-contain" style="font-size: 14px">
1. package book.io;
2.
3. import java.io.File;
4.
5. /**
6. *
7. * @author Hejy
8. * 2014-06-05
9. * 删除文件或目录
10. */
11. public class DeleteFileUtil {
12. /**
13. * 删除文件,可以是单个文件或文件夹
14. * @param fileName 待删除的文件名
15. * @return 文件删除成功返回true,否则返回false
16. */
17. public static boolean delete(String fileName){
18. File file = new File(fileName);
19. if(!file.exists()){
20. System.out.println("删除文件失败:"+fileName+"文件不存在");
21. return false;
22. }else{
23. if(file.isFile()){
24.
25. return deleteFile(fileName);
26. }else{
27. return deleteDirectory(fileName);
28. }
29. }
30. }
31.
32. /**
33. * 删除单个文件
34. * @param fileName 被删除文件的文件名
35. * @return 单个文件删除成功返回true,否则返回false
36. */
37. public static boolean deleteFile(String fileName){
38. File file = new File(fileName);
39. if(file.isFile() && file.exists()){
40. file.delete();
41. System.out.println("删除单个文件"+fileName+"成功!");
42. return true;
43. }else{
44. System.out.println("删除单个文件"+fileName+"失败!");
45. return false;
46. }
47. }
48.
49. /**
50. * 删除目录(文件夹)以及目录下的文件
51. * @param dir 被删除目录的文件路径
52. * @return 目录删除成功返回true,否则返回false
53. */
54. public static boolean deleteDirectory(String dir){
55. //如果dir不以文件分隔符结尾,自动添加文件分隔符
56. if(!dir.endsWith(File.separator)){
57. dir = dir+File.separator;
58. }
59. File dirFile = new File(dir);
60. //如果dir对应的文件不存在,或者不是一个目录,则退出
61. if(!dirFile.exists() || !dirFile.isDirectory()){
62. System.out.println("删除目录失败"+dir+"目录不存在!");
63. return false;
64. }
65. boolean flag = true;
66. //删除文件夹下的所有文件(包括子目录)
67. File[] files = dirFile.listFiles();
68. for(int i=0;i<files.length;i++){
69. //删除子文件
70. if(files[i].isFile()){
71. flag = deleteFile(files[i].getAbsolutePath());
72. if(!flag){
73. break;
74. }
75. }
76. //删除子目录
77. else{
78. flag = deleteDirectory(files[i].getAbsolutePath());
79. if(!flag){
80. break;
81. }
82. }
83. }
84.
85. if(!flag){
86. System.out.println("删除目录失败");
87. return false;
88. }
89.
90. //删除当前目录
91. if(dirFile.delete()){
92. System.out.println("删除目录"+dir+"成功!");
93. return true;
94. }else{
95. System.out.println("删除目录"+dir+"失败!");
96. return false;
97. }
98. }
99.
100. public static void main(String[] args) {
101. //String fileName = "g:/temp/xwz.txt";
102. //DeleteFileUtil.deleteFile(fileName);
103. String fileDir = "G:/temp/temp0/temp1";
104. //DeleteFileUtil.deleteDirectory(fileDir);
105. DeleteFileUtil.delete(fileDir);
106.
107. }
108. }
</div>
分享到:
相关推荐
本文将深入探讨如何在VS2017中编写代码来删除文件夹及其包含的所有文件,包括递归处理嵌套的子文件夹。 首先,我们需要了解Windows API中的关键函数,如`FindFirstFile`、`FindNextFile`和`RemoveDirectory`。这些...
本代码使用c语言,可执行递归删除指定文件夹下所有的文件(包含文件以及文件夹)的操作,注释详细,易于使用或修改
"Java 递归删除文件和文件夹" Java 递归删除文件和文件夹是 Java 编程中一个常见的操作。该操作需要使用 Java 的 File 类来实现,通过递归调用来删除文件和文件夹。 File 类 在 Java 中,File 类是用于表示文件和...
### 批处理删除指定文件夹下的所有文件和文件夹 #### 概述 在Windows操作系统中,批处理脚本是一种非常实用的工具,它能够帮助用户执行一系列预先定义好的命令,实现自动化操作。本文主要介绍如何通过批处理脚本来...
标题中的"pb9 删除文件夹及文件夹里面的全部文件"指的是使用PowerBuilder 9(简称PB9)进行文件和文件夹操作的编程实践。PowerBuilder是一款强大的可视化开发工具,尤其适用于构建数据库应用。在这个场景中,开发者...
### Python简单删除目录下文件及文件夹的方法 在Python编程中,经常需要处理文件系统相关的任务,例如创建、删除文件或文件夹等。本篇文章将详细介绍如何使用Python内置的`shutil`模块来轻松实现这些功能。特别是...
本压缩包文件“BAT批处理脚本-文件相关操作-删除指定路径下指定文件及文件夹外的所有文件及文件夹1.zip”包含了用于自动删除指定路径下非特定文件或文件夹的BAT脚本。以下是关于这个脚本和批处理技术的详细解释: *...
在Windows环境下,使用C++进行文件或文件夹的删除操作主要涉及到Windows API函数的调用。Windows API提供了丰富的函数来管理文件系统,其中包括删除文件和文件夹的功能。本篇文章将详细讲解如何在C++中实现这个功能...
VC中的文件操作,判断文件、文件夹是否存在、删除文件夹、求文件夹大小 VC 中的文件操作是一种常见的编程技术,包括判断文件、文件夹是否存在、删除文件夹、求文件夹大小等多种操作。这些操作都是基于 Windows API ...
本压缩包文件“BAT批处理脚本-文件相关操作-删除指定路径下指定文件及文件夹外的所有文件及文件夹2.zip”主要包含了关于如何使用批处理脚本来删除特定路径下非指定文件和文件夹的脚本。 批处理脚本(.bat)是基于...
android 删除文件夹及文件夹下面的所有文件
### C#删除FTP文件夹(含子文件夹与文件)详解 #### 一、背景介绍 在进行FTP操作时,经常需要对服务器上的文件或文件夹进行管理,其中包括删除操作。对于简单的文件删除,通常使用.NET Framework提供的`...
在Qt编程中,处理文件和目录的操作是常见的需求,包括读取文件夹内容、移动文件以及删除文件夹内的文件。本文将深入探讨这些主题,并提供相关的Qt API和实践示例。 首先,我们要了解Qt中的QDir类,它是用于处理文件...
QDir是Qt中的一个核心类,它提供了对文件系统目录的操作,如读取、遍历、创建和删除目录以及文件。在`Qt删除一个目录下所有文件和文件夹`的场景中,QDir类是主要工具。 1. **QDir的构造**: 可以通过传递一个路径...
"SVN 删除文件和文件夹" SVN(Subversion)是一种版本控制系统,广泛应用于软件开发项目中。删除文件和文件夹是 SVN 中的一种基本操作。本文将详细介绍如何使用 Eclipse 删除 SVN 服务器上的文件和文件夹,并解释 ...
批量删除文件夹下指定文件夹及文件之外的bat脚本。 比如我要将H:\tem2下除 文件 7za.exe 和 must.txt 文件夹 a 和 sdfg 外的所有文件和文件夹全删除,包括系统文件和隐藏文件。
QT 清空目标文件夹内的所有内容,清空文件夹内的所有文件,删除非空文件夹,以上功能均做成了函数,调用时将文件夹全路径作为参数传递进去即可,简单方便实用。删除文件及文件夹涉及到的类包括QDir、QFile、...
在VC++开发环境中,删除文件夹及其内容是常见的任务,特别是在清理临时文件、卸载程序或执行系统维护时。本文将详细介绍三种在MFC(Microsoft Foundation Classes)环境下使用C++在Windows操作系统中删除文件夹及...
这个"文件及文件夹访问权限修改工具"就是专为此目的设计的,它允许用户自定义文件和目录的访问规则,防止未经授权的用户直接访问、修改或删除敏感资料。以下是关于这个工具及其相关知识点的详细说明: 1. **文件...
这是一个可以定时自动删除指定文件夹下文件的Winform应用程序,该程序只适用Windows系统环境,使用.net3.5框架开发,主要包含如下功能: ①可以选择需要删除文件的文件夹(或者直接复制需删除的文件夹路径) ①可以...