初探文件搜索器
一.效果
我用的笔记本是win7系统的,它自带的文件搜索功能虽然方便,但速度太慢,
常常搜索一个文件要等好几分钟,甚至几十分钟,相信大家也有过体验。
我用java写了一个简单的FileSearcher,发现它的速度比win7自带搜索器快很多,往往几秒钟就搜完了。
以图为证:
二.文件查找方法
下面简单介绍我的代码实现:
核心部分是利用递归算法,不断地列出当前目录(parent)下的子文件,判断子文件类型,若是目录,则继续递归;若是真实文件,则判断文件名中是否含有所需查找的关键字。
/** * 搜索文件方法 * * @param parent * @param targetFileName */ public void search(File parent, String targetFileName) { if(stopFlag==false){ if (parent.isFile()) { return; } if (parent.exists()) { File[] lf = parent.listFiles(); if (lf == null) { return; } for (File f : lf) { if (f.isFile()) { countAll++; if (f.getName().indexOf(targetFileName) >= 0) { countFinded++; // jta_result.append("finded:" + f.getAbsolutePath()+"\r\n"); jta_result.append(f.getAbsolutePath()+"\r\n"); } } if (f.isDirectory()) { search(f, targetFileName); } } } } }
三。JFileChooser使用
为了查找时的方便,我还是用了JFileChooser这个组件,用户通过它来选择查找的初始目录,然后程序在该目录下查找所需文件。
效果如图:
代码实现如下:
/**
* show the filechooser frame
*/
public File showFileChooser(){
JFileChooser fc = new JFileChooser("d:");
//是否可多选
fc.setMultiSelectionEnabled(true);
//选择模式,可选择文件和文件夹
fc.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
// fc.setFileSelectionMode(JFileChooser.FILES_ONLY);
// fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
//设置是否显示隐藏文件
fc.setFileHidingEnabled(true);
fc.setAcceptAllFileFilterUsed(false);
//设置文件筛选器
// fc.setFileFilter(new MyFilter("java"));
// fc.setFileFilter(new MyFilter("zip"));
// fc.setFileFilter(filter)
// FileFilter
int returnValue = fc.showOpenDialog(new JFrame("open"));
// int r=fc.showSaveDialog(new JFrame("save"));
if (returnValue == JFileChooser.APPROVE_OPTION)
{
File file=fc.getSelectedFile() ;
System.out.println(file);
return file;
// fc.getSelectedFiles() ;
}
else {
return null;
}
}
上面红色部分获取并返回了在JFileChooser中选择的文件,程序调用出则利用它来查找文件。
相关推荐
文件搜索器文件搜索器(文件搜索器)文件搜索器
多线程文件搜索器多线程文件搜索器多线程文件搜索器多线程文件搜索器多线程文件搜索器
使用java实现的一个文件搜索器,该搜素器能够自动读出电脑上面已有的盘,使用者可以通过选择指定盘,输入需要搜索的关键字进行搜索,也可以通过文件选择器进行选择,在指定的文件夹中进行搜索,且该过程可中断。
文件搜索器!!!!!!!!!!!!!!!!!!!!!!
快速文件搜索器快速文件搜索器快速文件搜索器快速文件搜索器快速文件搜索器
易语言文件搜索器源码,文件搜索器,查找文件
文件搜索器多线程的搜索器文件搜索器多线程的搜索器文件搜索器多线程的搜索器文件搜索器多线程的搜索器文件搜索器多线程的搜索器文件搜索器多线程的搜索器文件搜索器多线程的搜索器原创
精彩编程与编程技巧-VB中自制文件搜索器 ...
C#写的文件搜索小工具,可以搜索各种文件
都是自己亲自敲的,跟大家分享一下!这里是运用java语言进行编写的,将我们平时用到的一些基本知识点运用上来!
文件搜索器,模拟WINDOWS自带的搜索引擎. 具有强大的搜索文件和文件夹的功能.并能在列表框中对搜索到的文件或文件夹进行操作.. 对于新手,具有一定的学习价值。
使用java实现的一个文件搜索器,该搜素器能够自动读出电脑上面已有的盘,使用者可以通过选择指定盘,输入需要搜索的关键字进行搜索,也可以通过文件选择器进行选择,在指定的文件夹中进行搜索,且该过程可中断。
文件搜索器 Everything
文件搜索器,可以代替电脑的搜索功能 文件搜索器
Designer设计窗体,结合代码,对搜寻文件在规定路径下进行目录遍历
一个文件搜索器1.0一个文件搜索器1.0一个文件搜索器1.0一个文件搜索器1.0一个文件搜索器1.0
易语言皆杀文件搜索器1.2源码,皆杀文件搜索器1.2
一个很好的文件搜索器的软件一个很好的文件搜索器的软件