Java 教程

Java 控制语句

面向对象编程

Java 内置类

Java 文件处理

Java 错误与异常

Java 多线程

Java 同步

Java 网络编程

Java 集合

Java 接口

Java 数据结构

Java 集合算法

高级 Java

Java 其他

Java APIs 和框架

Java 类引用

Java 有用资源

Java - 删除文件



在 Java 中删除文件

要在 Java 中删除文件,可以使用 File.delete() 方法。此方法从给定路径删除文件或目录。

语法

以下是使用 File.delete() 方法删除文件的语法:

File file = new File("C:/java/hello.txt");

if(file.exists()){
   file.delete();
}

从当前目录删除文件

以下示例演示了 File.delete() 方法的使用,用于删除当前目录中已存在的文件:

示例

package com.tutorialspoint;

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;

public class FileTest {
  
   public static void main(String args[]) throws IOException {
      BufferedWriter out = new BufferedWriter (new FileWriter("test.txt"));
      out.write("test data");
      out.close();

      File file = new File("test.txt");
      if(file.exists()) {
         boolean success = file.delete();

         if (success) {
            System.out.println("The file has been successfully deleted."); 
         }else {
            System.out.println("The file deletion failed.");
         }        
      }else {
         System.out.println("The file is not present."); 
      }
   }
}

输出

以上代码将创建文件 test.txt 并以二进制格式写入给定的数字。标准输出屏幕上的输出也将相同。

这将产生以下结果:

The file has been successfully deleted.

删除不存在的文件

以下示例演示了调用 File.delete() 方法来删除当前目录中不存在的文件。由于文件不存在,因此返回 false 作为结果。

示例

package com.tutorialspoint;

import java.io.File;
import java.io.IOException;

public class FileTest {
  
   public static void main(String args[]) throws IOException {
      File file = new File("test1.txt");
      boolean success = file.delete();

      if (success) {
         System.out.println("The file has been successfully deleted."); 
      }else {
         System.out.println("The file deletion failed.");
      }    
   }
}

输出

以上代码将创建文件 test.txt 并以二进制格式写入给定的数字。标准输出屏幕上的输出也将相同。

这将产生以下结果:

The file deletion failed.

从给定目录删除所有文件

以下示例演示了 File.delete() 方法的使用,用于递归地删除给定目录中的所有文件。

示例

package com.tutorialspoint;

import java.io.File;
import java.io.IOException;

public class FileTest {
  
   public static void deleteFiles(File dirPath) {
      File filesList[] = dirPath.listFiles();
      for(File file : filesList) {
         if(file.isFile()) {
            file.delete();
         } else {
            deleteFiles(file);
         }
      }
   }
   public static void main(String args[]) throws IOException {
      
      //Creating a File object for directory
      File file = new File("D:\\test");
      
      //List of all files and directories
      deleteFiles(file);
      System.out.println("Files deleted.");
   }
}

输出

以上代码将创建文件 test.txt 并以二进制格式写入给定的数字。标准输出屏幕上的输出也将相同。

这将产生以下结果:

Files deleted.
广告