Pagina 1 di 1

Java,Swing e DB Access

Inviato: mer 10 mar 2010, 19:00
da dexter
Salve,
ho la necessità di creare un programmino in Java che faccia uso di un database Access esistente.
La connessione al database già funziona grazie ai driver jdbc:odbc. Il problema è che quando estraggo un campo di tipo stringa i caratteri accentati vengono sostituiti da punti interrogativi. Come posso fare per risolvere questo problema?

Grazie

dexter

Re: Java,Swing e DB Access

Inviato: mer 10 mar 2010, 19:18
da targzeta
Ad occhio e croce è un problema di codifica dei caratteri, devi sapere con quale codifica sono scritti i campi sul database e quindi regolarti di conseguenza, vedi se c'è qualcosina per Java che ti può aiutare, io Java se posso lo evito :)

Emanuele

Re: Java,Swing e DB Access

Inviato: mer 10 mar 2010, 19:31
da dexter
su access il tipo del campo è testo, non mi porta la codifica

Re: Java,Swing e DB Access

Inviato: mer 10 mar 2010, 19:41
da dexter
Mi sono informato e dovrebbe essere l'unicode, il punto è che ho provato a estrarre la stringa passando come charset "UTF-8" ma non funziona lo stesso. Invece dei punti interrogativi vengono visualizzati dei quadratini

Re: Java,Swing e DB Access

Inviato: mer 10 mar 2010, 19:49
da targzeta
Che vuoi dire con "passando come charset "UTF-8""? Se i dati sono scritti in unicode quando tu li leggi li leggi in unicode, al massimo li puoi ricodificare come pare a te quando li mandi in output. O mi sono perso qualcosa?

Emanuele

Re: Java,Swing e DB Access

Inviato: mer 10 mar 2010, 19:55
da targzeta
Prova a vedere se ti può essere d'aiuto:
http://www2.mokabyte.it/cms/article.run ... 1_a1feaaaa

Anche se non menziona mai access, Invece questo ha più o meno il tuo stesso problema....forse :):
http://forum.html.it/forum/showthread/t-1277393.html

Emanuele

Re: Java,Swing e DB Access

Inviato: mer 10 mar 2010, 20:18
da dexter
Quando estrapolo la stringa dal ResultSet con resultset.getString("nomecampo") i caratteri speciali vengono visualizzati con "?". Quindi ho provato a specificare il tipo di codifica con new String(resultset.getBytes(),charset) dove il charset specificato è "UTF-8". Ma comunque non funziona. Questo intendevo prima.

Re: Java,Swing e DB Access

Inviato: mer 10 mar 2010, 23:58
da ildiama
Java utilizza UNICODE (16 bit a carattere), non UTF-8 (8 bit a carattere).

Re: Java,Swing e DB Access

Inviato: gio 11 mar 2010, 10:47
da dexter
si ma comunque non funziona. Vengono visualizzati comunque i punti interrogativi. Non capisco il perchè di questa cosa...