我的代码中的文件,目录路径问题(错误帮助)

时间:2019-04-22 13:56:01

标签: java

我正在做一个记忆游戏,在一种方法中,我试图通过使用File创建所有卡,但无法运行。它总是转到“图片路径为空”,但我希望它运行。

(into {} (filter #(= (:status %) "COMPLETED") (shuffle test-data)))

2 个答案:

答案 0 :(得分:2)

java.io.File类已过时。 java.nio.file package是它的替代品。

File类是Java 1.0的一部分,在报告错误方面做得很差。它的许多方法返回null或false,这不会告诉您实际出了什么问题。实际上,java.nio.file中的类将引发异常,以告诉您确切的错误所在。

具体来说,您要使用PathFiles类:

;WITH DateTable AS
(
SELECT row = 1, date = '2019-01-01'
UNION ALL

    SELECT row + 1, DATEADD(YEAR, -1, date)
    FROM DateTable
    WHERE row + 1 <= 7
)
SELECT *
FROM DateTable

这可能不会使您的程序正常运行,但会为您提供解决问题所需的信息。

答案 1 :(得分:0)

好的,我根据您的要求使用了您的代码并对其进行了修改。

看看:

注意:我的照片文件夹位于会议室目录中

import java.io.File;
import java.util.ArrayList;
import java.util.List;

class Card{
    String photoName,cardPath;
    public Card(String name, String cardPath2) {
        this.photoName = name;
        this.cardPath = cardPath2;
    }
}

public class readPhotos {

    public static List<Card> createAllCards(String dirPath){
        //System.out.println("create all cards");
        List<Card> cardList = new ArrayList<>();
        File file = new File(dirPath);
        File[] pictures = file.listFiles();
        //System.out.println("file:" + Arrays.toString(pictures));
        int index;
        String type = "";
        String cardPath;
        if (pictures != null){
            for (File picture : pictures) {
                index = picture.getName().lastIndexOf(".");
                if (picture.isFile()){
                    if (index > 0) {
                        type = picture.getName().substring(index + 1);
                        System.out.println("output:" + type);
                        if (type.equals("png")){
                            cardPath = picture.getPath();
                            //cardPath = cardPath.replaceAll("\\\\","\\\\\\\\");
                            cardList.add(new Card(picture.getName(),cardPath));
                        } 
                    }
                }
            }
        }else {
            System.out.println("Picture path is empty");
        }
        return cardList;
    }

    public static void main(String...args) 
    {
        List<Card> cardList  = readPhotos.createAllCards("./photos/");

        System.out.println(cardList);
    }

}

相应地添加照片路径...在调用方法readPhotos.createAllCards("./photos/");

enter image description here