Boa tarde Galera!
Preciso Gravar um objeto em um arquivo.xls. Esse é um objeto do tipo Planilha.
Depois vou limpar esse objeto.
Depois vou ler esse arquivo e colocar no objeto Planilha de novo.
Fiz esse código abaixo. mas ele não está passando os dados para a Planilha.
public void salvaPlan(Planilha plan){
File f = new File(“planteste.xls”);
Isso aqui não vai salvar uma planilha do Excel, isso só vai serializar seu objeto plan.
Para criar planilhas você precisa usar uma biblioteca específica pra isso, como por exemplo o Apache POI.
Y
Yehhdeivid
Nunca usei Apache poi. Alguém pode me da um help?
B
brunoi25
O cara ensina certinho,até as bibliotecas de xls ele disponibilizou,dá uma assistida.
Y
Yehhdeivid
Cara tentei tentei e não consegui.
Ele só mostra como imprimir. Eu preciso Criar uma arquivo.xls e passar para esse arquivo uma Matriz.
Olha oque eu fiz. Não da nem um erro, mas também não cria o arquivo.
public void salvaPlan(Planilha plan){
try {
HSSFWorkbookworkbook=newHSSFWorkbook();HSSFSheetsheetTeste=workbook.createSheet("teste");intrownum=0;for(inti=0;i<plan.getPlanilha().length;i++){Rowrow=sheetTeste.createRow(rownum++);intcellnum=0;for(intj=0;j<plan.getPlanilha()[i].length;j++){Cellcell=row.createCell(cellnum++);cell.setCellValue((double)plan.getPlanilha()[i][j].getValor());}}FileOutputStreamarquivo=newFileOutputStream(newFile("planteste.xls"));workbook.write(arquivo);arquivo.close();System.out.println("Arquivo Excel criado com sucesso!");}catch(Exceptione){e.getMessage();}}
staroski
Deve estar ocorrendo um erro sim, acontece que você não está apresentando o erro em lugar nenhum.
O método e.getMessage() apenas retorna uma String, mas você não está fazendo nada com esse retorno.
Altere seu catch para ficar assim:
}catch(Exceptione){e.printStackTrace();}
Y
Yehhdeivid
Bha que falta de atenção! kkk
Agora deu certinho.
Passou minha matriz para o excel.
Obrigado.
public void salvaPlan(Planilha plan){
try {
HSSFWorkbookworkbook=newHSSFWorkbook();HSSFSheetsheetTeste=workbook.createSheet("teste");intrownum=0;for(inti=0;i<plan.getPlanilha().length;i++){Rowrow=sheetTeste.createRow(rownum++);intcellnum=0;for(intj=0;j<plan.getPlanilha()[i].length;j++){Cellcell=row.createCell(cellnum++);if(plan.getPlanilha()[i][j]!=null){cell.setCellValue((double)plan.getPlanilha()[i][j].getValor());}}}FileOutputStreamarquivo=newFileOutputStream(newFile("planteste.xls"));workbook.write(arquivo);arquivo.close();System.out.println("Arquivo Excel criado com sucesso!");}catch(Exceptione){e.printStackTrace();}}