Ответ 1
Вам нужен файл с таким путем, попробуйте getAbsoluteFile.
File pDir = temp.getAbsoluteFile().getParentFile();
В java-программе я создаю файл с
File temp = new File("temp");
temp.createNewFile();
Тогда по какой-то причине, когда я пишу
File pDir = temp.getParentFile();
и pDir равно null. Я действительно хочу написать
File pDir = temp.getParentFile().getParentFile();
но это исключает исключение нулевого указателя.
Вам нужен файл с таким путем, попробуйте getAbsoluteFile.
File pDir = temp.getAbsoluteFile().getParentFile();
Вы создаете файл под названием temp, но у него нет пути, поэтому родительский путь не будет. Если вы хотите поместить файл в текущий каталог:
File temp = new File(System.getProperty("user.dir")+"/temp");
File parent = temp.getParentFile();