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。它只需要獲取最後一個圖片文件。 –