Foro de elhacker.net

Programación => Java => Mensaje iniciado por: BeLGaRioN en 23 Febrero 2012, 19:12 pm



Título: Intentando grabar en excel ya existente con java
Publicado por: BeLGaRioN en 23 Febrero 2012, 19:12 pm
Tengo esta clase:

Código:
public static void writeExcel(String excel_file, int fila, int columna, String value)
    {
try
        {
HSSFWorkbook wb = new HSSFWorkbook(new FileInputStream(excel_file)); //Se abre el fichero Excel
            HSSFSheet sheet = wb.getSheetAt(0); //Se obtiene la primera hoja
            HSSFRow row = sheet.getRow(fila); //Se obtiene la primera fila de la hoja
HSSFCell cell = row.getCell(columna);
cell.setCellValue(value);
        }
        catch(Exception e)
        {
            System.out.println("writeExcel ->"+e);
        }
    }

Y, cada vez que hago una llamada a ella me devuelve esto:

Citar
writeExcel ->java.lang.NullPointerException

En concreto se produce por culpa de esta instrucción:

Código:
cell.setCellValue(value);

Pero, ¿por qué? La función recibe lo que quiere recibir y aún así nada.


Título: Re: Intentando grabar en excel ya existente con java
Publicado por: Pablo Videla en 23 Febrero 2012, 19:25 pm
Y como llamas al metodo? muestranos eso.


Título: Re: Intentando grabar en excel ya existente con java
Publicado por: BeLGaRioN en 23 Febrero 2012, 19:30 pm
Esta es la llamada, pero no está ahí el problema, seguro.

Código:
writeExcel("excel.xls",0,3,"patata");


Título: Re: Intentando grabar en excel ya existente con java
Publicado por: Pablo Videla en 23 Febrero 2012, 19:34 pm
Esta es la llamada, pero no está ahí el problema, seguro.

Código:
writeExcel("excel.xls",0,3,"patata");

Por que no mejor le das la ruta absoluta y asi verificas que realmente le estas pasando el archivo que ya existe.

cambia tu catch por esto
Código
  1. catch (Exception e) {
  2.            System.out.println("Ha habido un error : " + e.getMessage());
  3.            e.printStackTrace();
  4. }
  5.  
para obtener mas detallado el error.