Salve a tutti
ho un problemino con java da sbattere la testa al muro
Sto leggendo un excel tramite ODBC con linguaggio Java
tramite il listato che posto giù:
//-------------------------------------------------------------------
public void takeValidFields(String filename) throws SQLException {
Connection con=null;
Statement state=null;
String query="";
String tmp="";
String database="jdbcdbc: Driver={Microsoft Excel Driver (*.xls)};DBQ=" + filename.trim() + ";DriverID=22;READONLY=true}";
//lo spazio tra odbc e Driver l'ho messo per evitare l'emoticons
con = DriverManager.getConnection( database ,"","");
query = "select * from ["foglio1$"]";
state = con.createStatement();
ResultSet rs = state.executeQuery( query );
Vector rows = new Vector(); //righe
ResultSetMetaData rsmd = rs.getMetaData();
while ( rs.next())
{
Vector thisRow = new Vector(); //vettore temporaneo per i dati
for (int j=1; j<=rsmd.getColumnCount(); j++){
tmp=rs.getString(j);
thisRow.add( tmp );
}
rows.add(thisRow); //aggiunge il vettore temporaneo al vettore sopra
}
System.out.println(rows);
//------------------------------------------------
Solo che alla fine della scansione del foglio excel, praticamente gli interi me li tratta come se fossero celle vuote e quindi me li imposta a null.
ho pensato fosse xche le celle erano impostate come celle numeriche, quindi ho impostato prima come celle testo e poi come celle generiche, ma il risultato non cambia.
Non posso mettere getInt xche non so esattamente dove si possano trovare tali interi(o anche double)....sono su questo problema da un paio di giorni e non riesco a trovare x adesso una via d'uscita...
come java virtual machine uso la jdk1.6.0_06.
Vi prego qlq consiglio mi può togliere d'impaccio.


dbc: Driver={Microsoft Excel Driver (*.xls)};DBQ=" + filename.trim() + ";DriverID=22;READONLY=true}";
Rispondi quotando

)