我是JavaFx的新手,我无法从目录中获取所有文件(我需要使用javafx构建的界面显示一些图片)。我一直在尝试使用listFiles()但是在显示测试时我一直都是null。 这是代码:
background-position: center 100px;
我认为我没有以正确的方式使用listFiles(),但我无法弄清楚如何实际操作。 我的文件夹album_1包含.png中的3张图片。但是,当我尝试这个示例时,我得不到任何结果,就像文件夹是空的一样。 我希望有人能够帮助我。 谢谢你的时间。
答案 0 :(得分:2)
您的for
循环错误。迭代返回的文件列表的正确方法是
for (int i = 0 ; i < fileList.length ; i++) {
System.out.println(filesList[i]);
}
或(更好):
for (File f : fileList) {
System.out.println(f);
}
请注意documentation for listFiles()
说:
表示文件和目录的抽象路径名数组 此抽象路径名表示的目录。阵列将是 如果目录为空则为空。如果此抽象返回null pathname不表示目录,或者发生I / O错误。
因此,如果您在此处收到空指针异常,那么因为repo
不是目录。您可能想先检查一下:
if (repo.isDirectory()) {
File[] fileList = repo.listFiles();
// ...
}