📄 b0c01bec7875001d1e98a7c17f0c1d66
字号:
//【例10-2】 列出当前目录中带过滤器的文件名清单。
//程序清单10-2: FileFilterDemo.java
import java.io.*;
public class FileFilterDemo implements FilenameFilter {
private String prefix = " ", suffix = " "; // 文件名的前缀、后缀
public FileFilterDemo(String filterstr) {
filterstr = filterstr.toLowerCase();
int i = filterstr.indexOf('*');
int j = filterstr.indexOf('.');
if (i > 0)
prefix = filterstr.substring(0, i);
if (j > 0)
suffix = filterstr.substring(j + 1);
}
public static void main(String args[]) throws Exception {
// 创建带通配符的文件名过滤器对象
FileFilterDemo Appt1= new FileFilterDemo("w*abc.txt");
File f1 = new File("");
File curdir = new File(f1.getAbsolutePath(), "");// 当前目录
System.out.println(curdir.getAbsolutePath());
String[] str = curdir.list(filter);// 列出带过滤器的文件名清单
for (int i = 0; i < str.length; i++)
System.out.println("\t" + str[i]);
}
public boolean accept(File dir, String filename) {
boolean yes = true;
try {
filename = filename.toLowerCase();
yes = (filename.startsWith(prefix)) && (filename.endsWith(suffix));
} catch (NullPointerException e) {
}
return yes;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -