1. package book.io;
2.
3. import java.io.File;
4.
5. /**
6. *
7. * @author XWZ
8. * 2007-11-27
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. }
Java 删除文件夹
转载上一篇:EL内置对象.
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
java删除文件夹
java删除文件夹
java System 删除文件夹 -
java删除只读文件夹 java直接删除文件夹
要完成这个操作首先要了解以下几个点1. java删文件是可以直接删除,当删除文件夹时,不能删干净只能一层一层的删2. 要了解递归
java 开发语言 后端 递归 System -
java强制删除文件夹内容 java删除整个文件夹
如果删除文件的话,直接调用他的delete()方法 注意如果待删除的是一个文件夹,就不能直接调用delete()删除。
进程占用 java删除文件夹 java 删除文件 System