使用递归算法搜索文件名并打开.exe文件
import java.io.File;
import java.io.IOException;
//搜寻文件
public class findFindName {
public static void main(String[] args) {
//传入目录和文件名
long startTime = System.currentTimeMillis();
findFile(new File("E:/"),"launcher.exe");
long endTime = System.currentTimeMillis();
System.out.println("用时"+(endTime-startTime)+"ms");
}
public static void findFile(File dir,String name){
//判断dir是否是目录
//获取开始时间
if(dir!=null && dir.isDirectory()){
//判断是否存在一级对象
File[] files=dir.listFiles();
if(files != null && files.length>0){
for (File file : files) {
if(file.isFile()){
if (file.getName().equals(name)) {
System.out.println("找到了"+file.getAbsolutePath());
//找到文件后启动软件,只能启动.exe文件
Runtime r=Runtime.getRuntime();
try {
r.exec(file.getAbsolutePath());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return;
}//else{
// System.out.println("不是这个文件"+file.getAbsolutePath());
// }
}else{
findFile(file,name);
// System.out.println("没有找到进行下一个目录"+file.getAbsolutePath());
}
}
}else{
// System.out.println("该文件夹为空");
}
}else{
System.out.println("对不起当前不是文件跟根目录无法搜索");
}
}
}

运行.exe文件方法
//找到文件后启动软件,只能启动.exe文件
Runtime r=Runtime.getRuntime();
try {
r.exec(file.getAbsolutePath());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
浙公网安备 33010602011771号