PDA

View Full Version : java database e file


SteR9
16-03-2004, 16:06
sto scrivendo un programma nel quale ho bisogno di scrivere su un file di testo dei dati estratti da un database...
per scrivere il file uso FileWriter


try{
while(rs.next()){
System.out.println(rs.getString(nameCol2));
buf_writer.write(rs.getString(nameCol2));
System.out.println(rs.getString(nameCol));
buf_writer.write(rs.getString(nameCol));
buf_writer.newLine();

}
} catch(SQLException as){
System.out.println("Errore selzione dati");
System.out.println(as);
}catch (IOException e) {
System.err.println("IOException: " + e);
}

in questo modo vado a prelevare i dati e ^in teoria^ a scriverli nel file di testo...solo che quando arriva il momento di scrivere ovvero alla seconda linea del while mi da questo errore
Errore selzione dati
java.sql.SQLException: No data found
se invece tolgo il fileWriter funziona tutto a meraviglia...quale potrebbe essere il problema??
grazie&ciao

cn73
16-03-2004, 16:18
Strano! Si potrebbe pensare che Uno dei valori letti è NULL, ma l'eccezione che scatta è una SQLException , perciò quando legge la seconda volta lo stesso valore... Non ricordo bene, l'unica è che con il metodo getXXX() l'oggetto vanga rimosso...

Prova:


try{
while(rs.next()){

String value2 = rs.getString(nameCol2);
String value1 = rs.getString(nameCol);

System.out.println(value2);
buf_writer.write(value2);
System.out.println(value1);
buf_writer.write(value1);
buf_writer.newLine();

}
} catch(SQLException as){
System.out.println("Errore selzione dati");
System.out.println(as);
}catch (IOException e) {
System.err.println("IOException: " + e);
}

SteR9
16-03-2004, 16:24
Originariamente inviato da cn73
Strano! Si potrebbe pensare che Uno dei valori letti è NULL, ma l'eccezione che scatta è una SQLException , perciò quando legge la seconda volta lo stesso valore... Non ricordo bene, l'unica è che con il metodo getXXX() l'oggetto vanga rimosso...

Prova:


try{
while(rs.next()){

String value2 = rs.getString(nameCol2);
String value1 = rs.getString(nameCol);

System.out.println(value2);
buf_writer.write(value2);
System.out.println(value1);
buf_writer.write(value1);
buf_writer.newLine();

}
} catch(SQLException as){
System.out.println("Errore selzione dati");
System.out.println(as);
}catch (IOException e) {
System.err.println("IOException: " + e);
}


:eek: :eek: prima avevo provato a fare così ma nn mi andava e ora va! boh!chissà che cavolo avevo fatto :D
un'altra cosa,con fileWriter esiste la possibilità di cancellare un file?
grazie mille!

cn73
16-03-2004, 16:32
No, si deve usare il metodo

boolean delete()
Deletes the file or directory denoted by this abstract pathname.
della classe java.io.File. Naturalemnte devi avere i permessi sul file e di operare sul file system...

SteR9
16-03-2004, 17:31
Originariamente inviato da cn73
No, si deve usare il metodo

boolean delete()
Deletes the file or directory denoted by this abstract pathname.
della classe java.io.File. Naturalemnte devi avere i permessi sul file e di operare sul file system...
ok perfetto,grazie mille!