1 。------------------------------------------------
package
net.mindview.util;
import
java.io.File;
import
java.io.FilenameFilter;
import
java.util.ArrayList;
import
java.util.Iterator;
import
java.util.List;
import
java.util.regex.Pattern;
public
final
class
Directory
{
public
static
File[] local(File dir,
final
String regex)
{
return
dir.listFiles(
new
FilenameFilter() {
private
Pattern pattern
=
Pattern.compile(regex);
public
boolean
accept(File dir, String name)
{
return
pattern.matcher(
new
File(name).getName()).matches();
}
});
}
public
static
File[] local(String path,
final
String regex)
{
//
Overloaded
return
local(
new
File(path), regex);
}
//
A two-tuple for returning a pair
of objects:
public
static
class
TreeInfo
implements
Iterable
<
File
>
{
public
List
<
File
>
files
=
new
ArrayList
<
File
>
();
public
List
<
File
>
dirs
=
new
ArrayList
<
File
>
();
//
The default iterable element is
the file list:
public
Iterator
<
File
>
iterator()
{
return
files.iterator();
}
void
addAll(TreeInfo other)
{
files.addAll(other.files);
dirs.addAll(other.dirs);
}
public
String toString()
{
//
这里的PPrint.pformat(dirs)是什么意思?是自定义类?
高分求解!;
return
"
dirs:
"
+
PPrint.pformat(dirs)
+
"
\n\nfiles:
"
+
PPrint.pformat(files);
}
}
public
static
TreeInfo walk(String start, String
regex)
{
//
Begin recursion
return
recurseDirs(
new
File(start), regex);
}
public
static
TreeInfo walk(File start, String
regex)
{
//
Overloaded
return
recurseDirs(start, regex);
}
public
static
TreeInfo walk(File start)
{
//
Everything
return
recurseDirs(start,
"
.*
"
);
}
public
static
TreeInfo walk(String start)
{
return
recurseDirs(
new
File(start),
"
.*
"
);
}
static
TreeInfo recurseDirs(File startDir,
String regex)
{
TreeInfo result
=
new
TreeInfo();
for
(File item : startDir.listFiles()) {
if
(item.isDirectory()) {
result.dirs.add(item);
result.addAll(recurseDirs(item, regex));
}
else
//
Regular file
if
(item.getName().matches(regex))
result.files.add(item);
}
return
result;
}
//
Simple validation test:
public
static
void
main(String[] args)
{
if
(args.length
==
0
)
System.out.println(walk(
"
.
"
));
else
for
(String arg : args)
Syst
em.out.println(walk(arg));
}
}
//
/:
2.--------------------------------------
package
com.abt.operator;
import
java.io.
*
;
import
java.util.
*
;
public
class
SeacherThread {
public
static
void
main(String args[]) {
Find f
=
new
Find();
Thread thread
=
new
Thread(f);
thread.start();
}
}
class
Find
implements
Runnable {
private
void
getFile(File file[]) {
for
(File f : file) {
if
(f.getName().endsWith(
"
.html
"
)) {
System.out.println(f.getName());
}
if
(f.isFile())
continue
;
if
(f.isDirectory()) {
File[] ffile
=
f.listFiles(
new
FilenameFilter() {
@Override
public
boolean
accept(File dir, String name) {
//
TODO Auto-generated method stub
return
true
;
}
});
getFile(ffile);
}
}
}
@Override
public
void
run() {
//
TODO Auto-generated method stub
File f
=
new
File(
"
D:/
"
);
File[] file
=
f.listFiles(
new
FilenameFilter() {
@Override
public
boolean
accept(File dir, String name) {
//
TODO Auto-generated method stub
return
true
;
}
});
getFile(file);
}
}
分享到:
相关推荐
java实现根据关键字查找文件夹里面的包含关键字的文件
Java 通过通配符查找文件 例如:*.*, *.java, a*.*, a*.java
1.查找关键字文件名、文件目录 2.查找关键字文件内容 3.查找关键字特殊文档内容(xml,doc,ppt,pdf,log,png,jpg等)
1.查找文件功能:可以根据指定的目录名与待查找的文件,在指定目录中进行查找,并返回结果。2.实现文件的拷贝与粘贴功能。3.实现文本类文件(.txt, .java, .ini, .bat, )的预览功能(比如实现对前100行文本在某个小...
关于数据查找与提取的java代码,使用者可以通过java 程序进行对txt文件内容的咨询与查找
使用这个自己写的jar包实现根据内容搜索文件的功能 可以在一个文件夹下搜索以txt和html结尾的文件
java 文件搜索引挚 java 文件搜索引挚 java 文件搜索引挚
Java文件管理系统,支持权限管理、历史版本管理、Office编辑、Office预览、在线解压缩、文件分享、文件加密、远程存储、跨仓库推送、跨服务器推送、秒传、断点续传、智能搜索、文件备注、自动备份、一键迁移。...
Java极速文件搜索工具,支持文件名及扩展名快速查找。比windows自带的快很多。
利用java 查找指定文件下的txt文件,并得到txt的名称 string类型
1.对于word excel txt等一些文本类型的文件,支持按内容及标题搜索。 2.开启工具后,实时监控全盘,文件变化立即更新可查 3.搜索速度极快,秒搜。 4.初次使用请先点击索引服务。 5.4分绝对超值
使用java实现的一个文件搜索器,该搜素器能够自动读出电脑上面已有的盘,使用者可以通过选择指定盘,输入需要搜索的关键字进行搜索,也可以通过文件选择器进行选择,在指定的文件夹中进行搜索,且该过程可中断。
java 识别文件的编码格式 读取文件的编码 utf-8 gbk gb2312 java 编码 java 获取文件编码格式 java 乱码查找
受够了windows自带的文件搜索器了吗,想实现迅速查找文件吗?那就下载吧。
JAVA 1.6实现的本地文件搜索系统-支持office pdf autocad等格式 java 文件检索 搜索 word excel ppt xls pdf autocad http操作控制 windows 2003 search index不好用,自娱自乐写了一个。 只提供使用,源码出售另请...
实现windows下查找指定文件下制定文件名的文件,java实现
java中读取目录下指定的文件
java实现根据文件名查找本地文件,该程序可直接放在eclipse或者Myeclipse中则可运行,不需要下载其他什么工具包,为开发人员节省了很多时间
java实现的查找重复文件和同名文件 支持设定查找路径范围 支持设定查找文件类型和忽略文件类型 查找结果一HTML方式输出 提供简单的删除功能
JAVA根据文件名检索文件JAVA根据文件名检索文件JAVA根据文件名检索文件JAVA根据文件名检索文件JAVA根据文件名检索文件JAVA根据文件名检索文件JAVA根据文件名检索文件