⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fsofilenamefilter.java

📁 上传文件的Java类
💻 JAVA
字号:
package com.jspsmart.file;/** * <p>Title: </p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2003</p> * <p>Company: </p> * @author not attributable * @version 1.0 */import java.io.File;import java.io.FilenameFilter;public class FsoFilenameFilter    implements FilenameFilter{    public FsoFilenameFilter(String s)    {        StringBuffer stringbuffer = new StringBuffer();        for(int i = 0; i < s.length(); i++)            if(s.charAt(i) != '*' || stringbuffer.length() <= 0 || stringbuffer.charAt(stringbuffer.length() - 1) != '*')                stringbuffer.append(s.charAt(i));        normalizedFilter = stringbuffer.toString();        originalFilter = s;    }    public String getFilter()    {        return originalFilter;    }    public boolean accept(File file, String s)    {        if(normalizedFilter.length() > 0)            return accept(s, 0, 0);        else            return true;    }    protected boolean accept(String s, int i, int j)    {        for(; j < normalizedFilter.length(); j++)            switch(normalizedFilter.charAt(j))            {            case 63: // '?'                if(i < s.length())                    i++;                else                    return false;                break;            case 42: // '*'                if(j == normalizedFilter.length() - 1)                    return true;                char c = normalizedFilter.charAt(j + 1);                if(c == '?')                {                    for(int k = i; k < s.length(); k++)                        if(accept(s, k, j + 1))                            return true;                    return false;                }                for(int l = s.indexOf(c, i); l < s.length() && l != -1; l = s.indexOf(c, l + 1))                    if(accept(s, l, j + 1))                        return true;                return false;            default:                if(i < s.length() && normalizedFilter.charAt(j) == s.charAt(i))                    i++;                else                    return false;                break;            }        return i == s.length();    }    protected String originalFilter;    protected String normalizedFilter;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -