Apache Commns io

There are six main areas included:

  • Utility classes - with static methods to perform common tasks

  • Input - useful Input Stream and Reader implementations

  • Output - useful Output Stream and Writer implementations

  • Filters - various implementations of file filters

  • Comparators - various implementations of java.util.Comparator for files

  • File Monitor - a component for monitoring file system events

简单使用事例:

1.读取Stream

//标准代码:
InputStream in = new URL( "http://jakarta.apache.org" ).openStream();
 try {
        InputStreamReader inR = new InputStreamReader( in );
        BufferedReader buf = new BufferedReader( inR );
        String line;
        while ( ( line = buf.readLine() ) != null ) {
           System.out.println( line );
        }
   } finally {
     in.close();
   }
//使用IOUtils
InputStream in = new URL( "http://jakarta.apache.org" ).openStream();
 try {
     System.out.println( IOUtils.toString( in ) );
 } finally {
     IOUtils.closeQuietly(in);
 }

2.读取文件

File file = new File("/commons/io/project.properties");
 List lines = FileUtils.readLines(file, "UTF-8");

3.察看剩余空间

long freeSpace = FileSystemUtils.freeSpace("C:/");

4.过滤文件

//显示当前目录下的所有隐藏文件:
File dir = new File(".");
String[] files = dir.list( HiddenFileFilter.VISIBLE ); 
for ( int i = 0; i < files.length; i++ ) 
{
     System.out.println(files[i]); 
}

附录:

过滤器                 功能
TrueFileFilter       
不进行过滤
FalseFileFilter      
过滤所有文件及目录

FileFileFilter       
仅接受文件

DirectoryFilter      仅接受目录

PrefixFileFilter     基于前缀(不带路径的文件名)

SuffixFileFilter     基于后缀(不带路径的文件名)

NameFileFilter       基于文件名称(不带路径的文件名)

WildcardFileFilter   基于通配符(不带路径的文件名)
RegexFileFilter      
基于正则表达式

AgeFileFilter        基于最后修改时间

SizeFileFilter       基于文件尺寸
MagicNumberFileFileter
基于Magic Number
EmptyFileFilter      
基于文件或目录是否为空
HiddenFileFilter     
基于文件或目录是否隐藏

CanReadFileFilter    
基于是否可读
CanWriteFileFilter   
基于是否可写入

DelegateFileFilter   
将普通的FileFilterFilenameFilter包装成IOFileFilter


复合过滤器             功能
AndFileFilter        
基于AND逻辑运算
OrFileFilter         
基于OR逻辑运算
NotFileFilter        
基于NOT逻辑运算


工具类:FileFilterUtils     

提供一些工厂方法用于生成各类文件过滤器

提供一些静态方法用于对指定的File集合进行过滤

121349_vAl7_1770617.jpg

121349_5Hp7_1770617.jpg

121349_a0uQ_1770617.jpg


转载于:https://my.oschina.net/u/1770617/blog/330094

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值