Прочитайте все файлы в папке
Привет, мне нужна программа, которая будет читать все файлы в папке. И там может быть любой файл, присутствующий в папке (например. Img2.jpg, Pom.xml, test.java, Img_HYD0001_2003.jpg). Может кто-нибудь посмотреть на эту программу, где я ошибаюсь?
Что я уже пробовал:
package com.test; import java.io.File; import java.util.ArrayList; import java.util.List; import java.util.HashMap; import java.util.Map; public class Test { public static void main(String k[]){ Map<Integer, List<imagestructure>> map = new HashMap<>(); File dir = new File("D:/Workspace/RESTfulExample"); String[] file = dir.list(); if (file == null) { } else { for (int i = 0; i < file.length; i++) { String filename = file[i]; // String img= getFile(filename); int id = getID(filename); if(id > 1){ if (map.containsKey(id)) { List<imagestructure> list = map.get(id); list.add(getStructure(filename)); } else { List<imagestructure> list = new ArrayList<>(); list.add(getStructure(filename)); map.put(id, list); } } System.out.println(filename); } } } private static String getID(String name) { int firstIndex = name.indexOf('_'); int lastIndex = name.lastIndexOf('_'); StringBuilder build = new StringBuilder(); if(firstIndex > 0 && lastIndex > 0){ build.append(name.substring(firstIndex +1,lastIndex)); return build.toString(); } return name; } private static ImageStructure getStructure(String fileName) { return new ImageStructure(fileName); } } class ImageStructure { private String imageName; private String imageProps; private Integer imageSize; public ImageStructure(String imageName) { super(); this.imageName = imageName; } public String getImageName() { return imageName; } public void setImageName(String imageName) { this.imageName = imageName; } public String getImageProps() { return imageProps; } public void setImageProps(String imageProps) { this.imageProps = imageProps; } public Integer getImageSize() { return imageSize; } public void setImageSize(Integer imageSize) { this.imageSize = imageSize; } @Override public String toString() { return "ImageStructure [imageName=" + imageName + ", imageProps=" + imageProps + ", imageSize=" + imageSize + "]"; } }
Richard MacCutchan
В чем же вопрос?