org.apache.commons.io.filefilter

Class SizeFileFilter

Implemented Interfaces:
FileFilter, FilenameFilter, Serializable, IOFileFilter

public class SizeFileFilter
extends AbstractFileFilter
implements Serializable

Filters files based on size, can filter either smaller files or files equal to or larger than a given threshold.

For example, to print all files and directories in the current directory whose size is greater than 1 MB:

 File dir = new File(".");
 String[] files = dir.list( new SizeFileFilter(1024 * 1024) );
 for ( int i = 0; i < files.length; i++ ) {
     System.out.println(files[i]);
 }
 
Version:
$Id: SizeFileFilter.java 591058 2007-11-01 15:47:05Z niallp $
Author:
Rahul Akolkar
Since:
Commons IO 1.2

Field Summary

private boolean
acceptLarger
Whether the files accepted will be larger or smaller.
private long
size
The size threshold.

Constructor Summary

SizeFileFilter(long size)
Constructs a new size file filter for files equal to or larger than a certain size.
SizeFileFilter(long size, boolean acceptLarger)
Constructs a new size file filter for files based on a certain size threshold.

Method Summary

boolean
accept(File file)
Checks to see if the size of the file is favorable.
String
toString()
Provide a String representaion of this file filter.

Methods inherited from class org.apache.commons.io.filefilter.AbstractFileFilter

accept, accept, toString

Field Details

acceptLarger

private final boolean acceptLarger
Whether the files accepted will be larger or smaller.

size

private final long size
The size threshold.

Constructor Details

SizeFileFilter

public SizeFileFilter(long size)
Constructs a new size file filter for files equal to or larger than a certain size.
Parameters:
size - the threshold size of the files

SizeFileFilter

public SizeFileFilter(long size,
                      boolean acceptLarger)
Constructs a new size file filter for files based on a certain size threshold.
Parameters:
size - the threshold size of the files
acceptLarger - if true, files equal to or larger are accepted, otherwise smaller ones (but not equal to)

Method Details

accept

public boolean accept(File file)
Checks to see if the size of the file is favorable.

If size equals threshold and smaller files are required, file IS NOT selected. If size equals threshold and larger files are required, file IS selected.

Specified by:
accept in interface IOFileFilter
Overrides:
accept in interface AbstractFileFilter
Parameters:
file - the File to check
Returns:
true if the filename matches

toString

public String toString()
Provide a String representaion of this file filter.
Overrides:
toString in interface AbstractFileFilter
Returns:
a String representaion

Copyright (c) 2002-2009 Apache Software Foundation