我正在做一个记忆游戏,在一种方法中,我试图通过使用File创建所有卡,但无法运行。它总是转到“图片路径为空”,但我希望它运行。
(into {} (filter #(= (:status %) "COMPLETED") (shuffle test-data)))
答案 0 :(得分:2)
java.io.File类已过时。 java.nio.file package是它的替代品。
File类是Java 1.0的一部分,在报告错误方面做得很差。它的许多方法返回null或false,这不会告诉您实际出了什么问题。实际上,java.nio.file中的类将引发异常,以告诉您确切的错误所在。
;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/");