Java文件删除失败

时间:2013-08-07 09:43:18

标签: java file io delete-file

我需要从java程序中删除文件并编写此代码。它无法删除文件,我无法弄清楚原因。文件未被使用且未写保护。

public static void delfile(String filetodel) {
    try {
        File file = new File("filetodel");

        if (file.delete()) {
            System.out.println(file.getName() + " is deleted!");
        } else {
            System.out.println("Delete operation is failed." + filetodel);
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
}

4 个答案:

答案 0 :(得分:7)

我想问题是:

File file = new File("filetodel");

这可能是(从方法中传递的参数 filetodel 推断):

File file = new File(filetodel);

其他一切似乎都很好,正在我的机器上工作。

答案 1 :(得分:1)

如果您只想删除该文件,则无需加载该文件。

java.nio.file.Files.deleteIfExists(filetodel);(其中filetodel包含文件的路径)

如果文件已被删除,则返回true,因此您甚至可以将其放在if子句中。

答案 2 :(得分:0)

嘿伙计你应该在delete中使用路径作为参数 static void delete(路径路径) 删除文件。 static boolean deleteIfExists(路径路径) 删除文件(如果存在)。

在此处搜索:http://docs.oracle.com/javase/7/docs/api/java/nio/file/Files.html

所以在你的情况下

File file = new File("c://user//filetodel");

file.delete();

或使用getAbsolutePath(filename)并在文件路径中使用它

答案 3 :(得分:0)

这是我删除文件的代码。

    public class deletef
    {
      public static void main(String[] args)
     {  
    try{

        File file = new File("/home/rahul/Downloads/ou.txt");

        if(file.delete()){
            System.out.println(file.getName() + " is deleted!");
        }else{
            System.out.println("Delete operation is failed.");
        }

    }catch(Exception e){

        e.printStackTrace();

    }

   }
}

您的代码也是正确的,但您必须将扩展名也放在您的文件中

File file = new File("filetodel");

此处添加文件的扩展名,否则您的代码将不会删除文件