Newsgroup: it.comp.java
Titolo: Esportare una JTable da Java ad Excel

Come si può fare per esportare una JTable da Java ad Excel ?
Qualcuno ha dei suggerimenti
da darmi?
Grazie 1000.

Come si può fare per esportare una JTable da Java ad Excel ?
Salvando i dati su file come .csv (Comma Separated Value)?
-- 
Ciao
	Fabrizio C.



Ops.. mi cogli impreparato!
Che tipo di estensione è la .cvs e come utilizzare i file con tale
estensione?
Grazie.


apri excel, apri un documento, salvalo/esportalo come csv, aprilo col
notepad.
ciao
-- 
Seti@Home Java Applets
http://maruko.cjb.net/



Tempo fa avevo trovato
questo codice (non è mio e mi spiace non poter indicare l'autore ma non me
lo ricordo).
E' una possibile strada per scrivere in un file excel
attraverso (purtroppo :-(( sigh) un bridge ODBC.
Comunque il principio è
quello, da lì puoi lavorarci sopra.
ps. avevo anche trovato in passato
un package di sviluppo che aveva implementato classi
Fogli,colonne,righe,celle ma ovviamente non era gratis.
***************************************************************
Ti scrivo
anche il .bat che lo lancia per darti una idea migliore
@echo off
del
ExcelReaderWriter.class
javac -deprecation ExcelReaderWriter.java
echo
Done compiling.  Now going to run ExcelReaderWriter...
java
ExcelReaderWriter
echo.
echo.
echo.
echo Now let's insert some
values...
java ExcelReaderWriter "Sample Company 1" "31" "1" "550.00"
java ExcelReaderWriter "Sample Company 2" "1" "0" "23.00"
java
ExcelReaderWriter "Sample Company 3" "15" "1" "42.39"
echo.
echo
Let's view the new values:
java ExcelReaderWriter
echo.
echo Let's
add a new table called table2:
java ExcelReaderWriter "table2" "field1
text, field2 text, field3 text, field4 text, field5 text"
pause
****************************************
Questa invece è la classe
import java.sql.Connection;
import java.sql.Statement;
import
java.sql.ResultSet;
import java.sql.DriverManager;
import
java.sql.DatabaseMetaData;
public class ExcelReaderWriter {
public static void main( String [] args ) {
        Connection c = null;
Statement stmt = null;
        try {
 
            // Using
the JDBC ODBC Bridge to connect 
            // to the Excel workbook.
// There needs to be a ODBC DSN created for
            // the Excel
workbook prior to running the code.
            // This uses a DSN called
budget.
            Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver" );
c = DriverManager.getConnection( "jdbc:odbc:budget", "", "" );
stmt = c.createStatement();
 
            if (args.length ==
0) {
               // The worksheet name is the table name - "main" in
// this example.  We need to use the dollar sign 
               //
following the table name.
 
               String query =
"select * from [main$];";
               ResultSet rs = stmt.executeQuery(
query );
 
               System.out.println( "Found the following
billing information:" );
               while( rs.next() )
{
                   System.out.print( rs.getString( "Merchant" ) + "\t");
System.out.print( rs.getString( "Closing" ) + "\t");
System.out.println( rs.getString( "Amount" ) );
               }
rs.close();
 
            } else if (args.length == 2) {
// make sure that we can write to the Excel workbook
               if
(c.isReadOnly()) c.setReadOnly(false);
 
               DatabaseMetaData
dbmd = c.getMetaData();
               ResultSet rs = dbmd.getTables(null,
null, args[0], new String[] {"TABLE"});
// drop the table if it already exists
               while (rs.next()) {
System.out.println("dropping table = " + rs.getString("TABLE_NAME"));
stmt.execute("drop table [" + args[0] + "];");
}
               // now create the table (worksheet)
StringBuffer sql = new StringBuffer();
sql.append("create table [" + args[0] + "] ");
sql.append("(" + args[1] + ")");
System.out.println("sql = " + sql.toString());
System.out.println(stmt.executeUpdate(sql.toString()));
            }
else {
 
               // make sure that we can write to
the Excel workbook
               if (c.isReadOnly())
c.setReadOnly(false);
 
               // we are expecting
to insert four values:
               // - merchant name
// - bill closing day of the month
               // - type of payment
(automatic or manual)
               // - amount of payment
if (args.length == 4) {            
                  String payType =
new String();
 
                  if
(args[2].equalsIgnoreCase("0")) 
                     payType = "Manual";
else
                     payType = "Automatic";
String sql = new String();
 
                  sql =
"Insert into [main$] ("
                                + "Merchant, "
+ "Closing, "
                                + "Type, "
+ "Amount) values ('" 
                                + args[0] + "', '"
+ args[1] + "', '"
                                + payType + "', '"
+ args[3] + "')";
System.out.println("sql = " + sql);
System.out.println(stmt.executeUpdate(sql));
}
 
            } // end of checking for args
} catch( Exception e ) {
            System.err.println( e );
        }
finally {
            try {
                stmt.close();
c.commit();
                c.close();
            } catch( Exception e )
{
                System.err.println( e );
            }
        }
} // end of main
} // end of ExcelReaderWriter class
--------------------------------
Inviato via 
http://usenet.iol.it
 

estensione?
Marco Parmeggiani mi ha tolto le parole... dalla tastiera.
Per le descrizioni di (quasi?) tutti i formati:
http://www.wotsit.org/
Ti indico anche altri modi (che non ho mai provato):
- usare i "risultati" del progetto POI di Apache
- salvare come tabella HTML su un file .xls
- altri?
HTH
-- 
Ciao
	Fabrizio C.

Come si puň fare per esportare una JTable da Java ad Excel ?


On Wed, 27 Mar 2002 10:50:46 GMT, 
nipogab...@libero.it
 (Gab000)
wrote:
Grazie in particolare a Gab000 che mi ha dato la dritta
che sto seguendo  (sto scrivendo il codice....., lo spunto è stato
fondamentale) .
In generale però grazie a tutti coloro che hanno risposto.
A presto.
Un salutone e Buona Pasqua a tutto il NG.