Java使用FileFilter过滤文件

2019-03-17 14:42|来源: 网路

FileFilter的主要作用就是检测文件是否存在,但也提供文件过滤功能。FileFilter 和FilenameFilter 唯一的不同是FileFilter 提供文件对象的访问方法,而FilenameFilter 是按照目录和文件名的方式来工作的。

private class FileFilter1 implements FileFilter{
    @Override
    public boolean accept(File file) {
        return file.getName().endsWith(".txt");
    }
}
 
@Test
public void test(){
    File[] files = new File("/home/hadoop").listFiles(new FileFilter1());
     
    for(File file:files){
        System.out.println(file.getName());
    }
}


获取隐藏文件

用户File的isHidden方法即可

public class FileHiddenName implements FileFilter {  
  @Override
  public boolean accept(File pathname) {
   // TODO Auto-generated method stub
   return pathname.isHidden();
  }

}

整理于网络

相关问答

更多

使用LINQ过滤XML文件(Using LINQ to filter XML file)

XElement.Elements()仅返回该特定元素的直接子元素。 请改用XElement.Descendants()。 private XDocument FilterRoles(XDocument xmlDoc) { XElement element = xmlDoc.Element("SiteMenuItems"); XElement root = new XElement("SiteMenuItems", ( ...

使用Blazeds和Flex将文件上传到文件夹?(Upload file into Folder Using Blazeds and Flex?)

如果文件尚不存在,则需要创建该文件。 createNewFile()方法将为您执行此操作: File fileToUpload = new File(name); fileToUpload.createNewFile(); try { FileOutputStream oFile = new FileOutputStream(fileToUpload, false); ... You need to create the file if it does not exist

使用NSPredicates过滤NSMutableArray(Filtering NSMutableArray with NSPredicates)

您的代码中存在一些概念错误。 首先,在声明谓词时应该初始化NSMutableArray谓词: NSMutableArray *compoundPredicateArray = [NSMutableArray array]; 现在你只在你的第一个if()实例化它,这样如果没有设置品牌过滤器,可变数组甚至不会被实例化,所以稍后向它添加对象(例如在第二个过滤if() )是无效的并且复合谓词创建为空。 在您的第一个if()您将拥有: [compoundPredicateArray addObject:

java文件名过滤器模式[复制](java filenames filter pattern [duplicate])

String#matches()接受正则表达式 模式 。 “外行人”变体*2010*.txt的正则表达式变体是.*2010.*\.txt 。 所以以下应该工作: public boolean accept(File dir, String name) { return name.matches(".*2010.*\\.txt"); } 双反斜杠就是代表实际的反斜杠,因为反斜杠本身就是Java String的转义字符。 或者,您也可以使用其他String方法,而无需使用正则表达式: pub ...

如何使用awk过滤文件的整个块?(How to use awk to filter entire blocks of a file?)

如果您的实际Input_file与显示的示例相同,那么以下内容可能对您有所帮助。 awk '/\/\/ Split/{non_flag=1} !non_flag; /}/ && non_flag{non_flag=""}' Input_file 如果你想打印已经split块,那么下面的内容也可以帮助你。 awk '/\/\/ Split/{flag=1} flag; /}/ && flag{flag=""}' Input_file If your actual Input_file is ...
java8新特征详解
java文件操作专题教程
JAVA概述
第一部分:java入门基础
第二部分:java常用类
第三部分:jdbc系列教程
第四部分:java高级特征

相关文章

更多

最近更新

更多