我正在编写Spring Maven Web应用程序。 在我的代码中,我试图对位于classpath的文件和目录执行各种操作。Java在空目录上执行class.getResource时获得空值
对于前 - 下面片段来获得目录
{
URL resource = FileUtil.class.getResource(inboxLocation); //getting null when directory is empty
File directory = new File(resource.getPath());
Collection<File> files = FileUtils.listFiles(directory, TrueFileFilter.TRUE, null);
ArrayList<File> fileArray = new ArrayList<>(files);
return fileArray.subList(0, Math.min(batchSize, fileArray.size()));
}
这工作得很好,当inboxLocation(目录)已经有一个文件中的所有文件。 但是,当inboxLocation为空时,我在资源中获取空值。
还有另一个功能,我尝试将文件移动到目录.. 即使该方法在目录为空时失败。
我正在使用IntelliJ作为开发平台。
能就如何处理这种情况下任何人的帮助.. 任何帮助表示赞赏
IntelliJ与你的问题无关。你应该用流而不是文件来思考。您的网络应用程序不应该依赖对文件系统的访问。 – duffymo
我同意..我这样做只是为了设置正确的测试env – rajvishal777
为什么你必须使用'getResource'来获取'File'对象? – aristotll