比较java中的文件列表
我正在尝试实现一个JavaFx应用程序,其中比较mp4的文件名和png的文件名,如果它们相等或一个包含另一个,那么现在就有一个sysout 到目前为止,我使用两个循环遍历文件列表,并检索两个文件,但有一个问题:我的PNG比MP4多,这就是为什么我得到ArrayOutOfBounds异常。我真的找不到解决这个问题的办法。问题在于最后的if语句比较java中的文件列表,java,oop,javafx,Java,Oop,Javafx,我正在尝试实现一个JavaFx应用程序,其中比较mp4的文件名和png的文件名,如果它们相等或一个包含另一个,那么现在就有一个sysout 到目前为止,我使用两个循环遍历文件列表,并检索两个文件,但有一个问题:我的PNG比MP4多,这就是为什么我得到ArrayOutOfBounds异常。我真的找不到解决这个问题的办法。问题在于最后的if语句 public void videoLoop() { File videoDirectory = new File("C:\\Users\\
public void videoLoop() {
File videoDirectory = new File("C:\\Users\\Hasan\\OneDrive\\Desktop\\Smart-Moniesta\\Smart-Moniesta-Raspberry-Pi\\src\\ressources\\videos");
File[] listOfFiles = videoDirectory.listFiles();
File imgDirectory = new File("C:\\Users\\Hasan\\OneDrive\\Desktop\\Smart-Moniesta\\Smart-Moniesta-Raspberry-Pi\\src\\ressources\\images");
File[] imglistOfFiles = imgDirectory.listFiles();
int i = 0;
int j = 0;
for (i = 0; i <= listOfFiles.length - 1; i++) {
if (listOfFiles[i].isFile()) {
System.out.println("File aus der i Schleife " + listOfFiles[i].getName());
}
}
for (j = 0; j <= imglistOfFiles.length - 1; j++) {
if (imglistOfFiles[j].isFile()) {
System.out.println("File Bilder aus der j Schleife: " + imglistOfFiles[j].getName());
}
}
if (listOfFiles[i].getName().contains(imglistOfFiles[j].getName())) {
System.out.println("Vergleich klappt" + listOfFiles[i].getName());
} else {
System.out.println("KLappt nicht");
}
}
public void videoLoop(){
File videoDirectory=新文件(“C:\\Users\\Hasan\\OneDrive\\Desktop\\Smart-Moniesta\\Smart-Moniesta-Raspberry-Pi\\src\\resources\\videos”);
File[]listOfFiles=videoDirectory.listFiles();
File imgDirectory=新文件(“C:\\Users\\Hasan\\OneDrive\\Desktop\\Smart-Moniesta\\Smart-Moniesta-Raspberry-Pi\\src\\resources\\images”);
文件[]imglistofiles=imgDirectory.listFiles();
int i=0;
int j=0;
对于(i=0;i您需要将第二个for循环嵌套在第一个循环中。最后一个if条件应该嵌套在内部for循环中
您还需要在for循环中检查第二个文件名是否包含第一个文件名。在最后一个if
条件中,您在哪里取i
和j
的值。它取i
和j
的最后一个值,因此ArrayOutOfBounds
噢,现在我明白了d、 我该如何做才能让它从头到尾进行比较?我想要实现的是,每当代码发现具有相同名称或包含部分名称的内容时,它都会呈现一个图像。您可以嵌套for循环并在那里进行比较,并给出某个数组何时被完全遍历的条件,这样您就不会得到ArrayOutOfBounds
例外我知道这应该是一个评论,但我没有足够的代表com。