我正在编写幻灯片,允许显示的图片在显示时被删除,编辑或忽略。除了被指向的目录包含子文件夹之外,它工作正常。在这种情况下,我希望代码搜索子文件夹,并在其中显示图像。目前忽略子文件夹并抛出空指针异常,但读取并显示主目录中的图像。这是代码的相关部分:
String files;
File folder = new File(path); //Loads folder
File[] listOfFiles = folder.listFiles(); //assigns filenames to array
for (int i = 0; i < listOfFiles.length; i++) {
//Some code here deals with graphics
Random randomGenerator = new Random(); //Initiates random generator
int randomInt = randomGenerator.nextInt(listOfFiles.length); //Limits max random to lenth of folder array
files = listOfFiles[randomInt].getName(); //Chooses a filename based on random number
final String fileID = "file:///" + path + "\\" + files; //creates path to display
currentFile = path + "\\" + files; //Assigns filename to variable ready for deletion later
}
我需要将这些更多地视为离散图像,而不仅仅是打印出它们的列表。我在这里的代码中排除了处理绘画到屏幕的片段(g.drawImage)。
如果有人建议使用Apache Commons IO FileUtils,您是否愿意解释我如何下载,安装然后导入正确的库,因为我一直无法实现这一点(如果它甚至可以工作)。我更喜欢一种不需要非标准库的解决方案。我已经读过它在Java 8中可以使用(我正在使用),但是我还没有找到任何相关的例子。
如果事实证明这是一个重复的问题,我很抱歉,但我一直找不到符合这些要求的类似例子。大多数其他示例似乎只是为了列出文件,而不是用它们执行操作。
非常感谢提前。