0
Java For-each-loop:我试图映射从下面的操作中检索到的数据并将其映射到对象模型。不幸的是,它仅输出检索到的对象中的最后一个对象。请任何人都可以检查代码的问题。for-each循环错误
public void listAllFilesInTheDirectoryAndSubdirectories(String aDirectoryName){
AppDirectory appdirectory = new AppDirectory();
PictureFile picturefile = new PictureFile();
ArrayList<AppDirectory> subdirectories = new ArrayList<AppDirectory>();
ArrayList<PictureFile> picturefiles = new ArrayList<PictureFile>();
appdirectory.setName(aDirectoryName);
appdirectory.setPictureFiles(picturefiles);
appdirectory.setSubDirectories(subdirectories);
File directory = new File(aDirectoryName);
//get all the files from a directory
File[] allFiles = directory.listFiles();
//Using a for-each loop to loop through each file in the list of files returned
for (File file : allFiles){
//Check if the file is-a-file, then print it out
if (file.isFile()){
String filePath = file.getAbsolutePath();
String fileName = file.getName();
String folderName = file.getParentFile().getName();
if(folderName.equals(aDirectoryName)){
System.out.println("Directory Name is : "+appdirectory.getName());
System.out.println(folderName);
System.out.println(fileName);
picturefile.setName(fileName);
picturefile.setType("jpeg");
picturefile.setLength(2354);
Dimension dimension = new Dimension(656, 413);
picturefile.setSize(dimension);
picturefile.setLength(50023);
appdirectory.addPictureFile(picturefile);
}else{
//appdirectory.setName(folderName);
//picturefile.setName(filePath);
//appdirectory.addPictureFile(picturefile);
//subdirectories.add(appdirectory);
}
}else if(file.isDirectory()){
listAllFilesInTheDirectoryAndSubdirectories(file.getAbsolutePath());
}
}
// System.out.println(picturefiles.size());
for(int x = 0; x<appdirectory.getPictureFiles().size(); x++){
System.out.println(appdirectory.getPictureFiles().get(x).getName());
}
}
您是否尝试使用IDE进行调试? –
另外这里是用于将pictureFile添加到图片文件ArrayList的方法。 public ArrayList getPictureFiles(){ return this.pictureFiles; } public void addPictureFile(PictureFile pictureFile){ this.getPictureFiles()。add(pictureFile); } –
@Wand标记:是的,代码很好。没有错误。 ...必须从图片对象添加到图片文件的ArrayList。它只需要获取最后一个图片文件。 –