JAVA File对象相关知识点

Posted 盗帅_tim

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA File对象相关知识点相关的知识,希望对你有一定的参考价值。

public class DirList {

    
    public static void main(String[] args) {
        
        
        File file=new File(".");
        String[] list;
        if(args.length==0) {
            list=file.list();
        }else {
            list=file.list(new DirFilter(args[0]));//new DirFilter出代码因为实现了FilenameFilter接口;所以只要实现了该接口的类都可以;此处利用策略模式,提高了代码的灵活性
        }
        Arrays.sort(list, String.CASE_INSENSITIVE_ORDER);//忽略大小写字母将单词都放在一起排序
        for(String dirName:list) {
            System.out.println(dirName);
            
        }
    }
    
}
/*
*1.创建这个类的目的是提供accept供file.list方法使用;使list可以回调accept方法;进而决定哪些文件包含在列表中

*/
public
class DirFilter implements FilenameFilter { private Pattern pattern; public DirFilter(String regex) { pattern=Pattern.compile(regex); } @Override public boolean accept(File dir, String name) { return pattern.matcher(name).matches(); } }
File.class源码:
public String[] list(FilenameFilter filter) { String names[] = list(); if ((names == null) || (filter == null)) { return names; } List<String> v = new ArrayList<>(); for (int i = 0 ; i < names.length ; i++) { if (filter.accept(this, names[i])) { v.add(names[i]); } } return v.toArray(new String[v.size()]); }

 






以上是关于JAVA File对象相关知识点的主要内容,如果未能解决你的问题,请参考以下文章

IO流相关知识(File,字节流,字符流,特殊操作流(标准输入流,标准输出流,对象序列化与反序列化,properties与IO流结合))相关知识总结

spring练习,在Eclipse搭建的Spring开发环境中,使用set注入方式,实现对象的依赖关系,通过ClassPathXmlApplicationContext实体类获取Bean对象(代码片段

I/O流的相关知识

JAVA IO流相关代码(File类的常见方法与应用)

JAVA IO流相关代码(File类的常见方法与应用)

Android必备知识点- Android文件(File)操作