Apache POI

0 respostas
carloshsamaral

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

[Link no Github](https://gist.github.com/carloshsamaral/2d01f9dcd674ee7c29af)

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<String> listaDiretorio = new ArrayList<String>();
			
			
			
			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());
		}
	}
}
Criado 26 de novembro de 2014
Respostas 0
Participantes 1