Galera to com um problema com o APACHE POI e gostaria que vocês me dessem uma luz.
Preciso percorrer uma pasta e listar seus arquivos … Já foi feito isso
Preciso verificar dentro desses arquivos (serão arquivos .doc, .docx e .pdf) se contém uma determinada palavra … É aqui que não to conseguindo fazer, to com a estrutura montada, percorro minha List mas não continua, já tentei desbugar e nada me vem a cabeça.
PS: O arquivo que eu estou tentando ler é um docx que eu criei e está na pasta e possui o valor de TESTE dentro dele.
Achei meu “problema” é meu if pra pegar o tipo do arquivo ele não entra no if caso o arquivo seja do tipo. Mesmo assim não to conseguindo resolver
[code]
package Main;
import java.io.File;
import java.io.FileInputStream;
import java.util.ArrayList;
import java.util.List;
import org.apache.poi.hwpf.extractor.WordExtractor;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
public class PercorrerPOI {
public static void main(String[] args) {
try {
File dir = new File(“C:\Teste”);
System.out.println(“Iniciando”);
List listaDiretorio = new ArrayList();
for (File p : dir.listFiles()) {
listaDiretorio.add((p.getParentFile() + "\\" + p.getName()));
}
// System.out.println(listaDiretorio);
if(!listaDiretorio.isEmpty()){
for(int i = 0;i < listaDiretorio.size();i++){
if (listaDiretorio.get(i).contains("doc")){
System.out.println("Foi encontrado o arquivo "+listaDiretorio.get(i));
POIFSFileSystem fs = new POIFSFileSystem(new FileInputStream(listaDiretorio.get(i)));
WordExtractor extractor = new WordExtractor(fs);
String wordText = extractor.getText();
System.out.println(wordText);
if(wordText.equalsIgnoreCase("teste")){
System.out.println(extractor.getFileSystem());
}
}else{
System.out.println("Arquivo não possui a extensão necessária "+listaDiretorio.get(i));
}
}
}
} catch (Exception e) {
System.out.println("Ocorreu um erro ao percorrer a pasta:"
+ e.getMessage());
}
}
}[/code]