带有文件的Java代码可从Eclipse运行,但不能从cmd运行

时间:2018-12-13 21:13:15

标签: java windows cmd

代码:

 File folder = new File("src/zipper");
 File[] listOfFiles = folder.listFiles();
 File s=listOfFiles[0];

在eclipse上工作出色,但是在cmd(windows)上却出现此错误:

Exception in thread "main" java.lang.NullPointerException
        at testFile.main(testFile.java:23)

第23行是:

File s=listOfFiles[0];

Zipper是一个文件夹,里面有很多文件夹,每个文件夹都有一个zip文件。

2 个答案:

答案 0 :(得分:2)

来自https://docs.oracle.com/javase/7/docs/api/java/io/File.html#listFiles()

  

返回值:一组抽象路径名,表示其中的文件和目录   此抽象路径名表示的目录。该数组将是   如果目录为空,则为空。如果此摘要返回null   路径名不表示目录,或者发生I / O错误。

由于您从Java启动的工作目录中没有src / zipper文件夹,因此您似乎会得到null。

答案 1 :(得分:0)

尝试传递完整路径,例如c:\ myfolder \ src,然后查看得到的内容。可能是您正在运行src文件夹的位置不是正确的相对路径。