如何在Java中删除.dat文件?

时间:2014-04-14 15:33:04

标签: java file

我想删除.dat文件。这是我的代码,但它不起作用。

String searchCust = SearchCust.getText();

    File file = new File(searchCust + " booking.dat");
    if (file.delete()) {
        JOptionPane.showMessageDialog(null, "Info deleted");

    } else {
        JOptionPane.showMessageDialog(null, "Delete failed");
    }

基本上,当我运行时,文件不会被删除,并且会出现“删除失败”消息

3 个答案:

答案 0 :(得分:4)

如果删除文件,

File.delete()将仅返回true 。这意味着如果文件不存在,它将返回false。在调用true

之前,请确保File.exists()返回File.delete()
if (file.exists())
{
    if (file.delete())
    {
    }
    else
    {
    }
}

另请参阅Files.deleteIfExists(),如果删除尝试失败,可以通过IOException提供更多信息:

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;

try
{
    final Path p = Paths.get(searchCust + " booking.dat");
    if (Files.deleteIfExists(p))
    {
        JOptionPane.showMessageDialog(null, "Deleted " + p);
    }
    else
    {
        JOptionPane.showMessageDialog(null, p + " does not exist.");
    }
}
catch (final IOException e)
{
    JOptionPane.showMessageDialog(null, e.getMessage());
}

答案 1 :(得分:0)

if(file.exists()){
   boolean isDelete = file.delete();
   if(isDelete){
      //condition
   }else{
     //condition
   }
}

答案 2 :(得分:0)

代码看起来不错

fileObject.delete()是删除记录的方法。但是你应该首先知道java中当前的工作目录是什么。

尝试以下命令。检查其可用性:fileObject.exists()

System.getProperty("user.dir"); //获取当前工作目录。

这是方法,你可以解决这个问题。