| Register | FAQ | Calendar | Search | Today's Posts | Mark Forums Read |
|
#1
| |||
| |||
| Hi everybody, I'm having problems retrieving strings from MySQL in UTF-8. I know (or at least I'm pretty sure) that the strings are being written to the database correctly, because when I use the mysql command-line utility and do a SELECT I see the correct strings there. However, when I retrieve the strings they are not formatted correctly. For example, if I write the string "Knäckebröt" to the database and then try to retrieve it, it comes out as "KnÃ?ckebröt". I read the Connector/J manual, where it tells me to do the following to write and read UTF-8 strings to and from MySQL: When opening a connection with MySQL I should use the following code: Properties props = new Properties(); props.setProperty("characterEncoding", "utf-8"); conn = DriverManager.getConnection(connectionString, props); However, when I now try to read a string from a resultset, for example ( where results is a JDBC ResultSet): String messageText = results.getString("messageText"); the text comes out garbled. Does anybody have any suggestions for me to be able to retrieve the text with the correct encoding? Thanks very much, Jonck |
|
#2
| |||
| |||
| Hi, just a hint: is your test environment (e.g. shell) able to display utf-8 characters ? the windows cmd.exe is not, in a browser you have to set the encoding correctly. Hope that helps, Patrik Jonck wrote: > Hi everybody, > I'm having problems retrieving strings from MySQL in UTF-8. I know (or > at least I'm pretty sure) that the strings are being written to the > database correctly, because when I use the mysql command-line utility > and do a SELECT I see the correct strings there. > However, when I retrieve the strings they are not formatted correctly. > For example, if I write the string "Knäckebröt" to the database and then > try to retrieve it, it comes out as "KnÃ?ckebröt". > > I read the Connector/J manual, where it tells me to do the following to > write and read UTF-8 strings to and from MySQL: > When opening a connection with MySQL I should use the following code: > Properties props = new Properties(); > props.setProperty("characterEncoding", "utf-8"); > conn = DriverManager.getConnection(connectionString, props); > > However, when I now try to read a string from a resultset, for example ( > where results is a JDBC ResultSet): > String messageText = results.getString("messageText"); > > the text comes out garbled. > > Does anybody have any suggestions for me to be able to retrieve the text > with the correct encoding? > > Thanks very much, Jonck |
|
#3
| |||
| |||
| try this jdbc:mysql://localhost:3306/edusuite?useUnicode=true&characterEncoding=UTF-8 ÔÚ Sat, 16 Oct 2004 17:24:10 GMT ʱ, Jonck <jonck@vanderkogel.net> дÁË: -- >Hi everybody, >I'm having problems retrieving strings from MySQL in UTF-8. I know (or >at least I'm pretty sure) that the strings are being written to the >database correctly, because when I use the mysql command-line utility >and do a SELECT I see the correct strings there. >However, when I retrieve the strings they are not formatted correctly. >For example, if I write the string "Knäckebröt" to the database and then >try to retrieve it, it comes out as "KnÃ?ckebröt". > >I read the Connector/J manual, where it tells me to do the following to >write and read UTF-8 strings to and from MySQL: >When opening a connection with MySQL I should use the following code: >Properties props = new Properties(); >props.setProperty("characterEncoding", "utf-8"); >conn = DriverManager.getConnection(connectionString, props); > >However, when I now try to read a string from a resultset, for example ( >where results is a JDBC ResultSet): >String messageText = results.getString("messageText"); > >the text comes out garbled. > >Does anybody have any suggestions for me to be able to retrieve the text >with the correct encoding? > >Thanks very much, Jonck gumpagain@163.com /** /* Java Is Not Platform-independent.It Is The Platform! */ |
|
#4
| |||
| |||
| In <6edcn0ho7mh17s5n595snq4f6g3b0hcilr@news.yaako.com > Yan Lijun wrote: > try this > jdbc:mysql://localhost:3306/edusuite?useUnicode=true& > characterEncoding=UTF-8 > Thank you very much, that worked perfectly! |
![]() |
| Thread Tools | |
| Display Modes | |
In an effort to better serve ads to our visitors, cookies are used on objectmix.com. For more information, check out our Privacy Policy.