DBMNG数据库管理与应用

书籍是全世界的营养品。生活里没有书籍,就好像没有阳光;智慧里没有书籍,就好像鸟儿没有翅膀。
当前位置:首页 > MySQL > 常见问题

为路径和文件系统操作使用NIO(3)

20.4.3 为路径和文件系统操作使用NIO(3)

使用“\*”和“\?”可以指定一个“*”或“?”字符。为了指定“\”字符,需要使用“\\”。可以将下面这个newDirectoryStream()方法调用替换到前面的程序中来进行试验:

  1. Files.newDirectoryStream(Paths.get(dirname), "{Path,Dir}*.{java,class}")  

这个调用获取的目录流只包含名称由“Path”或“Dir”开头、并且扩展名为“java”或“class”的文件。因此,能够匹配DirList.java和PathDemo.java这类名称,但是不能匹配MyPathDemo.java。

过滤目录的另外一种方式是使用下面这个版本的newDirectoryStream()方法:

  1. static DirectoryStream<Path> newDirectoryStream(Path dirPath,   
  2. DirectoryStream.Filter<? super Path> filefilter)  
  3. throws IOException 
其中,DirectoryStream.Filter是定义了以下方法的接口:
				
  1. boolean accept(T entry) throws IOException 

在这个方法中,T将会是Path类型。如果希望在列表中包含entry,就返回true;否则返回false。这种形式的newDirectoryStream()方法的优点是:可以基于文件名之外的其他内容过滤目录。例如,可以根据文件大小、创建日期、修改日期或属性进行过滤。

下面的程序演示了这个过程,该程序只列出可写的文件。


 
 
本站文章内容,部分来自于互联网,若侵犯了您的权益,请致邮件chuanghui423#sohu.com(请将#换为@)联系,我们会尽快核实后删除。
Copyright © 2006-2023 DBMNG.COM All Rights Reserved. Powered by DEVSOARTECH            豫ICP备11002312号-2

豫公网安备 41010502002439号