joeykiske
14-04-2010, 18:13
Salve,
devo gestire alcuni dati nel mio programma con Excel ed ho utilizzato HSSF poichè è una delle librerie più complete.
Tramite un file Master (dove c'è l'esatta formattazione,formule,area di stampa,componenti di dettaglio) inserisco i dati,tramite l'applicazione JAVA,ed infine salvo il tutto..il problema è che mi genera solo l'ultima riga..e andando a 'scalare' scrive sempre una colonna in meno...sapreste dirmi il xkè? ho anche eseguito un SOP (system.out.println) ed esegue tutte le operazioni che ho scritto..ma nel foglio excel non se ne vede traccia..:cry: :cry:
N.b. posto il codice in modo espanso per maggior leggibilità! (vedi ciclo for :p )
public static void main(String [] args) throws IOException
{
//prelevo in input il master e lo inserisco nel nuovo wb
InputStream inp = new FileInputStream("c:\\M_workbook.xls");
HSSFWorkbook wb = new HSSFWorkbook(inp);
//utilizzo il foglio provafoglio
HSSFSheet sheet = wb.getSheet("provafoglio");
ArrayList<HSSFRow> row = new ArrayList<HSSFRow> ();
//creo l'array di righe che dovrò utilizzare
for (int i=0;i<10;i++)
{
Row.add(i,sheet.createRow(((i+1)));
}
//inserisco i dati nelle righe + stampa a video
for (int i=0;i<10;i++)
{
for (int j=0;j<10;j++)
{
int a = i+1 , b = j+1;
row.get(i).createCell(j).setCellValue(a+","+b);
System.out.println("INDICE: "+i+" COLONNA: "+j+" VALORI: "+a+","+b);
}
}
//scrivo nuovo file!!
FileOutputStream fileOut = new FileOutputStream("c:\\workbook.xls");
wb.write(fileOut);
fileOut.close();
}
Perchè genera solamente,nel foglio excel,l'ultima riga? :cry: :cry:
Grazie Anticipatamente!! :D
devo gestire alcuni dati nel mio programma con Excel ed ho utilizzato HSSF poichè è una delle librerie più complete.
Tramite un file Master (dove c'è l'esatta formattazione,formule,area di stampa,componenti di dettaglio) inserisco i dati,tramite l'applicazione JAVA,ed infine salvo il tutto..il problema è che mi genera solo l'ultima riga..e andando a 'scalare' scrive sempre una colonna in meno...sapreste dirmi il xkè? ho anche eseguito un SOP (system.out.println) ed esegue tutte le operazioni che ho scritto..ma nel foglio excel non se ne vede traccia..:cry: :cry:
N.b. posto il codice in modo espanso per maggior leggibilità! (vedi ciclo for :p )
public static void main(String [] args) throws IOException
{
//prelevo in input il master e lo inserisco nel nuovo wb
InputStream inp = new FileInputStream("c:\\M_workbook.xls");
HSSFWorkbook wb = new HSSFWorkbook(inp);
//utilizzo il foglio provafoglio
HSSFSheet sheet = wb.getSheet("provafoglio");
ArrayList<HSSFRow> row = new ArrayList<HSSFRow> ();
//creo l'array di righe che dovrò utilizzare
for (int i=0;i<10;i++)
{
Row.add(i,sheet.createRow(((i+1)));
}
//inserisco i dati nelle righe + stampa a video
for (int i=0;i<10;i++)
{
for (int j=0;j<10;j++)
{
int a = i+1 , b = j+1;
row.get(i).createCell(j).setCellValue(a+","+b);
System.out.println("INDICE: "+i+" COLONNA: "+j+" VALORI: "+a+","+b);
}
}
//scrivo nuovo file!!
FileOutputStream fileOut = new FileOutputStream("c:\\workbook.xls");
wb.write(fileOut);
fileOut.close();
}
Perchè genera solamente,nel foglio excel,l'ultima riga? :cry: :cry:
Grazie Anticipatamente!! :D