Galera uso o sistema operacional windows e tenho uma pasta criada, dentro desta pasta tenho 50 arquivos .txt, o que eu precisava era o seguinte uma telinha que no caso pode ser desktop ou web que fizesse pesquisa dentro dos arquivos txt por exemplo no campo jtextfield escrevo a palavra chave “BACKUP” então o que o sisteminha precisa fazer pesquisar dentro dos arquivos que estao dentro de uma determinada pasta e retornar qual tem a palavra backup dentro do .txt!!!
Algo assim? (Eu tinha isso pronto aqui no meio dos projetos), eu fiz a um tempo atrás quando tinha um problema parecido com o seu :)
publicclassFileSearchimplementsRunnable{privateFilefile;privateStringkeyWord;publicFileSearch(Filefile,StringkeyWord){this.file=file;this.keyWord=keyWord;}@Overridepublicvoidrun(){if(file.isDirectory()){File[]files=file.listFiles();for(Filefile:files){if(file.isDirectory()){if(file.getName().toUpperCase().contains(keyWord.toUpperCase())){System.out.println("Dir: "+file.getAbsolutePath());}FileSearchfileSearch=newFileSearch(file,keyWord);Threadt=newThread(fileSearch);t.start();}else{searchFile(file,keyWord);}}}}privatevoidsearchFile(Filefile,StringkeyWord){keyWord=keyWord.toUpperCase();Scannerscanner=null;try{scanner=newScanner(file);intcount=1;while(scanner.hasNext()){if(scanner.nextLine().toUpperCase().contains(keyWord)){System.out.println(file.getAbsolutePath()+" - Linha "+count);}count++;}}catch(FileNotFoundExceptione){System.out.println("Arquivo não encontrado: "+file.getAbsolutePath());e.printStackTrace();}finally{if(scanner!=null)scanner.close();}}}
S
samuelM
E como vc passa um file como parametro ?
Criei um metodo construtor apenas para testar o seu metodo searchFile porém nao sei como passa esse file como parametro.
Rodrigo_Sasaki
Ué, é só instanciar um File, que é a pasta onde você deseja fazer a sua busca, e no outro parâmetro envia o que deseja procurar, no seu exemplo é a palavra chave “BACKUP”