递归测试
import java.io.File; java.util.ArrayList; java.util.HashMap; java.util.List; java.util.Map; public class FilesDemo { private static final String FILE_PATH = "./"; static List<Map<String,String>> FileList; void main(String[] args) { listFiles(new File(FILE_PATH),1); // for(Map<String,String> item:FileList){ System.out.println("{name:"+item.get("name")+",level:"+item.get("level")+"}"); } } void listFiles(File file,int level) { FileList = new ArrayList<>(); Map<String,String> item; File[] files = file.listFiles(); if (file.list().length != 0) { for (File fileTemp : files) { String fileName = fileTemp.getName(); System.out.println(getLevelPrefix(level) + fileName); if (fileTemp.isDirectory() && fileTemp.list().length > 0) { listFiles(fileTemp,level + 1); } else { item = new HashMap<String,1)">(); item.put("name",fileTemp.getName()); item.put("level" { System.out.println(getLevelPrefix(level) + file.getName()); } } static String getLevelPrefix( level) { StringBuilder sb = new StringBuilder(); for (int i = 1; i < level; i++) { sb.append(" "); } sb.append("|--"return sb.toString(); } }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。