📄 extendedfilefilter.java
字号:
// Decompiled by Jad v1.5.8e2. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://kpdus.tripod.com/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi space
// Source File Name: ExtendedFileFilter.java
package org.pf.file;
import java.io.File;
import java.io.FilenameFilter;
import java.util.*;
import org.pf.text.StringPattern;
public class ExtendedFileFilter
implements FilenameFilter
{
protected static final int DIR_CHECK_NAME = 1;
protected static final int DIR_INCLUDE = 2;
protected static final int DIR_EXCLUDE = 3;
private List stringPatterns;
private int dirHandling;
protected List getStringPatterns()
{
return stringPatterns;
}
protected void setStringPatterns(List newValue)
{
stringPatterns = newValue;
}
protected int getDirHandling()
{
return dirHandling;
}
protected void setDirHandling(int newValue)
{
dirHandling = newValue;
}
public ExtendedFileFilter()
{
stringPatterns = new Vector();
dirHandling = 1;
}
public void addPattern(String pattern)
{
StringPattern stringPattern = null;
stringPattern = new StringPattern(pattern, false);
getStringPatterns().add(stringPattern);
}
public void addPattern(String pattern, char digitWildcard)
{
StringPattern stringPattern = null;
stringPattern = new StringPattern(pattern, false, digitWildcard);
getStringPatterns().add(stringPattern);
}
public void addPattern(String pattern, boolean ignoreCase)
{
StringPattern stringPattern = null;
stringPattern = new StringPattern(pattern, ignoreCase);
getStringPatterns().add(stringPattern);
}
public void addPattern(String pattern, boolean ignoreCase, char digitWildcard)
{
StringPattern stringPattern = null;
stringPattern = new StringPattern(pattern, ignoreCase, digitWildcard);
getStringPatterns().add(stringPattern);
}
public void checkNameOfDirectories()
{
setDirHandling(1);
}
public void alwaysIncludeDirectories()
{
setDirHandling(2);
}
public void alwaysExcludeDirectories()
{
setDirHandling(3);
}
public boolean accept(File dir, String name)
{
File fileOrDir = null;
fileOrDir = new File(dir, name);
if (fileOrDir.isDirectory())
{
if (mustIncludeDirectories())
return true;
if (mustExcludeDirectories())
return false;
}
return checkAgainstPatterns(name);
}
protected boolean checkAgainstPatterns(String name)
{
Iterator iterator = null;
StringPattern pattern = null;
for (iterator = getStringPatterns().iterator(); iterator.hasNext();)
{
pattern = (StringPattern)iterator.next();
if (pattern.matches(name))
return true;
}
return false;
}
public boolean mustIncludeDirectories()
{
return getDirHandling() == 2;
}
public boolean mustExcludeDirectories()
{
return getDirHandling() == 3;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -