我今天在TIJ上看到一个这样的例程(关于文件过滤器的):import java.io.*;
import java.util.*;
import java.util.regex.*;public class DirList {
public static void main(String[] args) {
File path = new File(".");
String[] list;
if(args.length == 0)
list = path.list();
else
list = path.list(new DirFilter(args[0]));//注释1
Arrays.sort(list);
for(int i = 0; i < list.length; i++){
System.out.println(list[i]);
}
}
}
class DirFilter implements FilenameFilter {
private Pattern pattern;
public DirFilter(String regex) {
pattern = Pattern.compile(regex);
}
public boolean accept(File dir, String name) {
// Strip path information, search for regex:
return pattern.matcher(
new File(name).getName()).matches();
}
} ///:~
我的目的是想找出当前目录下的.java文件,请问在注释1的位置构建过滤器的参数应该怎么写,还有就是,给path.list()一个过滤器的实例,它将如何调用DirFilter的accept方法呢?多谢各位帮忙!
import java.util.*;
import java.util.regex.*;public class DirList {
public static void main(String[] args) {
File path = new File(".");
String[] list;
if(args.length == 0)
list = path.list();
else
list = path.list(new DirFilter(args[0]));//注释1
Arrays.sort(list);
for(int i = 0; i < list.length; i++){
System.out.println(list[i]);
}
}
}
class DirFilter implements FilenameFilter {
private Pattern pattern;
public DirFilter(String regex) {
pattern = Pattern.compile(regex);
}
public boolean accept(File dir, String name) {
// Strip path information, search for regex:
return pattern.matcher(
new File(name).getName()).matches();
}
} ///:~
我的目的是想找出当前目录下的.java文件,请问在注释1的位置构建过滤器的参数应该怎么写,还有就是,给path.list()一个过滤器的实例,它将如何调用DirFilter的accept方法呢?多谢各位帮忙!
解决方案 »
- 谁能帮我用SWT写一个简单的聊天程序!要源代码,功能说明在文章内容里写着呢!很急!
- 程序员们,上班啦,给你们发个有关程序员的笑话,开心一下
- 一个JTable的问题··请指点··谢谢···
- Vector和数组存储对象时的效率问题
- 不会吧!!着急,sun网站上的java API 不能下载只能在网上看吗,没有下载链接呀
- pick a random value among values with priority
- 请问关于如何用程序注册ODBC数据源
- 想学java
- 简单问题但很奇怪
- 哪位大虾能告诉我unicode中中文段的值?
- service层是什么概念 一般什么类放在这里?
- 有关鼠标拖曳时显示图标的问题 MouseMotionListener.mouseDragged(..)
这是一个正则表达式:匹配以.java结尾的文件名
还有我想问它是调用accept()的机制是怎样的?
这个函数由用户自己来撰写其内容,返回true或者false。上级类对每个文件名都会调用一次这个回调函数进行检查,判断是否要过滤掉这个文件。另外,你编译的时候出错,还是程序执行的结果不对?