微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

[javaSE] java获取文件列表

递归测试

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();
    }
}

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐