首页 > 解决方案 > 如何使用Java从某个文件夹中获取所有文件

问题描述

我正在尝试在 Java Swing 中制作一个包含 16 张卡片的记忆游戏,我为 Java 应用程序本身旁边的文件夹中所需的所有图像创建了一个文件夹:

(即 C:\Users\edwin\eclipse-workspace\A3 - Java\src\eindopdracht1\Plaatjes.java)

以及包含 8 个不同图像的图像文件夹:

C:\Users\edwin\eclipse-workspace\A3 - Java\src\eindopdracht1\Images

现在我想使用 for 循环将所有 8 个图像两次放入一个数组中。由于某种原因,Java 无法识别上面的第二个文件。这是为什么?我的代码:

package eindopdracht1;

import java.io.*;

import javax.swing.*;

public class Plaatjes extends JButton {
    private File[] files = new File(
            System.getProperty("C:\\Users\\edwin\\eclipse-workspace\\A3 - Java\\src\\eindopdracht1\\Images"))
                    .listFiles();
    private File[] afbeeldingen = new File[16];

    public Plaatjes() {

        for (int i = 1; i < files.length * 2; i = i + 2) {
            afbeeldingen[i - 1] = files[i];
            afbeeldingen[i] = files[i];
            System.out.println(files[i]);
        }
    }
}

标签: javaarraysfileooplocation

解决方案


你应该改变这行代码:

private File[] files = new File(
            System.getProperty("C:\\Users\\edwin\\eclipse-workspace\\A3 -Java\\src\\eindopdracht1\\Images"))
           .listFiles();

private File[] files = new File("C:\\Users\\edwin\\eclipse-workspace\\A3 - Java\\src\\eindopdracht1\\Images").listFiles();


推荐阅读