java这段代码有什么问题哪位大佬看一下?

import java.io.File;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.IOException;public class FileIo extends Thread { private File file; private String search; public FileIo(){ } public FileIo(File file,String search){ this.file=file; this.search=search; index(this.file,this.search); } @Override public void run() { FileReader fileReader = null; try { fileReader = new FileReader(file); char[] bytes = new char[5]; int look = 0; while ((look = fileReader.read(bytes)) != -1) { String fd = new String(bytes, 0, look); System.out.println(fd); if (fd.contains("kk")) { System.out.println("找到目标文件" + search + "在文件夹" + file); } } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { if (fileReader != null) { try { fileReader.close(); } catch (IOException e) { e.printStackTrace(); } } } } public static void index(File file,String search){ if(file.isFile()){ if (file.getAbsolutePath().endsWith(".java")); new FileIo().start(); } if (file.isDirectory()){ File[] f=file.listFiles(); for (File fs:f){ index(fs,search); } } }}

File对象传参应该是具体的文件路径,而不是文件夹路径,所以你的参数要把具体的文件名称和后缀带上,希望能够帮到你
温馨提示:内容为网友见解,仅供参考
第1个回答  2020-07-20
文件名字没写全,扩展名也要写上本回答被网友采纳
相似回答