Api para excel

Olá galera, estou com difuculdades para trabalhar coma API, sou iniciante em programaçao java mais tenho que desenvolver um program que le os dados da planilha do excel
e atualiza o banco de dados ja tentei utilizar Jexcel, tambem com apache mais na hora de executar ele esta caindo sempre na condição catch se alguem poder me ajudar agradeço.

Aqui está o codigo.
aqui está o codigo utilizando Jexcel

import[/code] java.io.File;
import javax.swing.JOptionPane;
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;

public class Teste02 {

public void LerExcel1() throws Exception
{
Workbook [color=green]workbook[/color] = Workbook.getWorkbook(new File(“Teste.xls”));

//le a quantidade de linhas da planilha.

Sheet sheet = workbook.getSheet(0);
int linhas = sheet.getRows();
int colunas = sheet.getColumns();

try{
    for(int l = 0; l < linhas; l++)
    {
        for(int c = 0; c < colunas; c++)
        {
            Cell a1 = sheet.getCell(l, c);
            String as1 = a1.getContents();

            JOptionPane.showMessageDialog(null, as1);
         }
    }
  }
   catch(Exception e)
   {

        JOptionPane.showMessageDialog(null, "resp");
   }
workbook.close();

}

}

este programa é apenas um teste para q eu possa entender e realmente faser o aplicativo.

Desde já agradeço.

Se você quiser, a alternativa é o Apache POI, que trabalha não só com o Excel, mas com a suíte do MS Office como um todo.

[]'s

Já fiz algo parecido, veja o codigo.

	public void lerExcel() {

		Workbook workbook; // a Planilha

		try {
			String p = null;
			String c = null;
			workbook = Workbook.getWorkbook(new File(arquivo)); // Pegando o
			// arquivo(diretório do arquivo)
			Sheet sheet = workbook.getSheet(0); // pegando a aba 0 da planilha
			int linhas = sheet.getRows(); // linha da planilha

			informacao.setText("inserindo dados...");
			TebelavendasDAO dao = new TebelavendasDAO();
			PrecosDescontos pd = new PrecosDescontos();
			for (int i = 0; i < linhas; i++) {
				Cell codigo = sheet.getCell(0, i); // coluna 0 linha 0
				Cell preco = sheet.getCell(1, i); // coluna 1 linha 0

				p = preco.getContents();
				c = codigo.getContents();


				pd.setPreco_18(p);
				pd.setCodigoInterno(c);

				dao.alterarPrecosDescontos(pd);
			}
			dao.descontos();//desconto dos preços.
			workbook.close();
		} catch (jxl.read.biff.BiffException e) {
			JOptionPane.showMessageDialog(null, "Tipo de arquivo inválido",
					"Atenção", JOptionPane.WARNING_MESSAGE);
		} catch (Exception e) {
			JOptionPane.showMessageDialog(null,
					"Não foi possivel inserir os dados : " + e.getMessage());
			e.printStackTrace();
		}

	}

Abraços.

Fica com DEUS.

Fexx, agradeço pela ajuda dei uma simplificada no seu codigo apenas pra ler já que vc esta alterando e inserindo mais não retorna nd cri uma JOPM para rwetornar a mensagem com a strng da cálula sera que não esta encontrando o caminho da minha planilha:

import java.io.File;
import javax.swing.JOptionPane;
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;

public class Teste1 {

public void lerExcel() {   

Workbook workbook;


try {   
    String p;   
    String c;   
    workbook = Workbook.getWorkbook(new File("Teste.xls")); // Pegando o   
    // arquivo(diretório do arquivo)   
    Sheet sheet = workbook.getSheet(0); // pegando a aba 0 da planilha   
    int linhas = sheet.getRows(); // linha da planilha   

     
    for (int i = 0; i < linhas; i++) {   
        Cell codigo = sheet.getCell(0, i); // coluna 0 linha 0   
        Cell preco = sheet.getCell(1, i); // coluna 1 linha 0   

        p = preco.getContents();   
        c = codigo.getContents();  
        JOptionPane.showMessageDialog(null, " valor de p" + p + "valor de c" + c);

    }   
    workbook.close();   
} catch (jxl.read.biff.BiffException e) {   
    JOptionPane.showMessageDialog(null, "Tipo de arquivo inválido",   
            "Atenção", JOptionPane.WARNING_MESSAGE);   
} catch (Exception e) {   
    JOptionPane.showMessageDialog(null,   
            "Não foi possivel inserir os dados : " + e.getMessage());   
    e.printStackTrace();   
}   

}
}

Abrço Fik com Deus tbm;

Não está retornando, pq eu criei um JLabel em meu form, apenas para informar se inseriu com sucesso, mas ele não se encontra nesse método.

No meu caso eu usei um JfileChooser , mas se está fazendo alguns teste, indica o caminho todo do arquivo, algo como :

C:\Users\Fernando\Desktop\ids das tabelas.xls

lembrando, que as barras vc teria que inverter para /

tenta ai.

Abraços.

Cara valeu mesmo consegui faser as leituras agora e continuar o programa, qualquer duvida vou recorrer a vocês de novo.

Que Deus Abençõe Vcs Brigadão

É isso ai cara.

Abraços.

E Que DEUS, abençoe você também.