偶刚好有一个,接着。
import java.io.File;
import java.io.FilenameFilter;public class Filter
implements FilenameFilter
{ public Filter(String extents[])
{
this.extents = extents;
} public Filter(String extent)
{
if(extent.indexOf('|') != -1)
extents = getExtents(extent);
else
this.extent = extent;
} public boolean accept(File dir, String name)
{
if(extents != null)
{
for(int i = 0; i < extents.length; i++)
if(name.endsWith("." + extents[i]))
return true; return false;
} else
{
return name.endsWith("." + extent);
}
} public int getExtentCount(String extent)
{
int count = 0;
for(int i = 0; i < extent.length(); i++)
{
char ch = extent.charAt(i);
if(ch == '|')
count++;
} return count;
} public String[] getExtents(String ext)
{
if(ext == null)
return null;
String subext = ext;
String s = "";
subext = subext + "|#";
int i = 0;
int j = 0;
int len = getExtentCount(subext);
extents = new String[len];
for(char ch = subext.charAt(i); ch != '#'; ch = subext.charAt(++i))
if(ch != '|')
{
s = s + ch;
} else
{
extents[j++] = s;
s = "";
} return extents;
} String extent;
String extents[];
}
import java.io.File;
import java.io.FilenameFilter;public class Filter
implements FilenameFilter
{ public Filter(String extents[])
{
this.extents = extents;
} public Filter(String extent)
{
if(extent.indexOf('|') != -1)
extents = getExtents(extent);
else
this.extent = extent;
} public boolean accept(File dir, String name)
{
if(extents != null)
{
for(int i = 0; i < extents.length; i++)
if(name.endsWith("." + extents[i]))
return true; return false;
} else
{
return name.endsWith("." + extent);
}
} public int getExtentCount(String extent)
{
int count = 0;
for(int i = 0; i < extent.length(); i++)
{
char ch = extent.charAt(i);
if(ch == '|')
count++;
} return count;
} public String[] getExtents(String ext)
{
if(ext == null)
return null;
String subext = ext;
String s = "";
subext = subext + "|#";
int i = 0;
int j = 0;
int len = getExtentCount(subext);
extents = new String[len];
for(char ch = subext.charAt(i); ch != '#'; ch = subext.charAt(++i))
if(ch != '|')
{
s = s + ch;
} else
{
extents[j++] = s;
s = "";
} return extents;
} String extent;
String extents[];
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货