Como já havia dito no post anterior, para este post precisaremos da JExcelApi. Para baixá-la clique aqui.
Aqui iremos tratar apenas do básico dessa biblioteca que oferece inúmeros recursos.
Este algoritmo é algo bem simples, que irá pesquisar um texto qualquer em um arquivo “.xls”.
Teremos duas classes, a classe Main e a classe Leitor.
Começaremos com Leitor:
public class Leitor {
List
String linhaPesquisa;//linha que será pesquisada.
public void leArquivos(){
for(File arquivo:listaArquivos){//iteração da lista de arquivos
leArquivoExcel(arquivo);//para cada arquivo chama leArquivoExcel()
}
}
public void leArquivoExcel(File arquivo){
try {
Workbook wb = Workbook.getWorkbook(arquivo);//cria um workbook a partir de um arquivo.
Sheet sheet = wb.getSheet(0);//dentro do workbook, pega a primeira planilha (0) do arquivo
for(int i = 0;i
if(celula.getContents().contains(linhaPesquisa)){//se a célula tiver o texto,
System.out.println("Achou "+linhaPesquisa+" em "+arquivo.getCanonicalPath()+", linha "+(i+1));//imprime o resultado.
}
}
}
}catch (BiffException e) {
}catch (IOException e) {}
}
public void addArquivo(String arquivoString){
File file = new File(arquivoString);//a partir da string passada cria um arquivo
listaArquivos.add(file);//adiciona o arquivo à lista.
}
public String getLinhaPesquisa() {
return linhaPesquisa;//método get.
}
public void setLinhaPesquisa(String linhaPesquisa) {
this.linhaPesquisa = linhaPesquisa;//método set.
}
}
Em seguida a classe Main:
public class Main {
public static void main(String[] args) {
Leitor leitor = new Leitor();//instancia um novo Leitor
leitor.addArquivo("C:/planTeste.xls");//adiciona arquivo à lista para pesquisa.
leitor.setLinhaPesquisa("A");//seta texto a ser pesquisado.
leitor.leArquivos();//chama método para ler os arquivos.
}
}
Para verem como essa API pode ser muito útil clique aqui e baixe um pequeno programa feito por mim em Java Swing usando a mesma.
