Java中如何实现对所有盘符进行全盘搜索?

就像windows的搜索功能一样。给出关键字就能在电脑的所有目录中搜索文件。关键问题是如何实现全盘扫描电脑中的所有目录?
import java.io.*;
class ListRootsTest
{
//ArrayList fileNames=new ArrayList();
void listRoots()
{
File[] roots=File.listRoots();
for(int i=0;i<roots.length;i++)
{
System.out.println(roots[i]);
}
}
void listDirectory(String dir)
{
File f=new File(dir);
File[] files=f.listFiles();
if(files==null)
return;
for(int i=0;i<files.length;i++)
{
if(files[i].isDirectory())
{
System.out.println("凳段-----------"+files[i]+"枣旁誉 is a directory has more files bellow:");
listDirectory(files[i].getAbsolutePath());
//listDirectory(files[i].getName());
//listDirectory(files[i].toString());
}

else
{
System.out.println(files[i]);
}
}
}
public static void main(String[] args)
{
ListRootsTest lrt=new ListRootsTest();
System.out.println("-----------"+"启首start list roots"+"----------");
lrt.listRoots();
System.out.println("-------"+"start list directory d:"+"-------");
//lrt.listDirectory(File.separator);
//lrt.listDirectory("D:\\myjava\\netTest");
lrt.listDirectory("D:"+File.separator);

}

}
/**
* 获取系统盘符
* @return
*/
public static File[] getSystemRoot(){
File[] roots = File.listRoots();
return roots;
}

接下来,你只要将这个盘符数组作为瞎闭你凯神芦的扫描参数就行了。盯带