Java 'file.delete()' Is not Deleting Specified File

delete-file, file, java

Solution

Be sure to find out your current working directory, and write your filepath relative to it.

This code:

File here = new File(".");
System.out.println(here.getAbsolutePath());

... will print out that directory.

Also, unrelated to your question, try to use `File.separator` to remain OS-independent. Backslashes work only on Windows.

Problem

This is currently what I have to delete the file but it's not working. I thought it may be permission problems or something but it wasn't. The file that I am testing with is empty and exists, so not sure why it doesn't delete it. ``` UserInput.prompt("Enter name of file to delete"); String name = UserInput.readString(); File file = new File("\\Files\\" + name + ".txt"); file.delete(); ``` Any help would be GREATLY appreciated! I now have: ``` File file = new File(catName + ".txt"); String path = file.getCanonicalPath(); File filePath = new File(path); filePath.delete(); ``` To try and find the correct path at run time so that if the program is transferred to a different computer it will still find the file.

Original source

Related problems