Mit miljø er følgende:
Linux Red Hat, Apache, Resin og MySQL med charset Latin 1.
Følgende er okkult for mig:
Når jeg LÆSER en streng fra MySQL fx "Folkebåd" og viser det i JSP med
charset UTF-8 bliver strengen "Folkebåd" - et eller andet sted - konverteret
fra Latin 1 "Folkebåd" til UTF-8 "FolkebÃ¥d".
Når jeg SKRIVER en streng fx "blåbærgrød" til MySQL, bliver den IKKE
konverteret til Latin 1, men skrives i MySQL som UTF-8 "blåbærgrød".
Det rejser flere spørgsmål for mig:
1. Hvornår opdager Java, at "Folkebåd" er Latin 1 og skal konverteres?
ResultSet statement.executeQuery(<query>);
boattype = rs.getString("boattype"); <- Sker konverteringen her?
2. Hvorfor konverteres String fra Latin 1 til UTF-8? Ville det ikke være
naturligt med en Exception?
3. OT: Er grunden til at MySQL med charset Latin 1 godt kan håndtere UTF-8,
at UTF-8 - som navnet antyder - reelt er en ganske almindelig 8 bit char
streng?
Med venlig hilsen
Allan
|