【发布时间】:2021-01-12 09:35:34
【问题描述】:
我正在制作一个Java程序,我想使用父目录的父目录,因为我想更改该目录中文件的内容。
到目前为止我试过了:
static File pdir = new File(System.getProperty("user.dir")).getParentFile();
static File pdir2 = new File(System.getProperty("pdir")).getParentFile();
还有一些类似的东西,但没有一个起作用。
第二行的错误是:
Plugin.main.main(main.java:20) 处的线程“main”java.lang.ExceptionInInitializerError 异常原因:java.base/java.io.File.(File.java) 处的 java.lang.NullPointerException :278) 在 Plugin.pfun.(pfun.java:13) ... 1 更多
你能推荐什么吗?
【问题讨论】:
-
定义“它们都不起作用”。代码编译了吗?您是否收到任何错误或异常?
-
不,有时它会出错,有时它工作不完整,它在我编写的代码中出错,并且错误是“Plugin.main 的线程“main”java.lang.ExceptionInInitializerError 中的异常。 main(main.java:20) 原因:java.base/java.io.File.
(File.java:278) 处的 java.lang.NullPointerException 在 Plugin.pfun. (pfun.java: 13)……还有 1 个” -
检查
System.getProperty是否确实返回了您认为的值。在我看来,在其中一种情况下,它返回一个null,然后将其传递给File的构造函数,这对此并不满意。 -
当我尝试只写第一行时,它可以工作。如果我也写第二行,就会出现上述错误。