Bad UT8 encoding got with a SQLite3 query

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Bad UT8 encoding got with a SQLite3 query

Michel
Hi everyone,

I have a sqlite3 data base which is UTF8 encoded. Accessing to it with a
ruby script gives me the right encoding for accented vowel, and doing an
hexdump of the file too, but I get a strange one with the sqlite3
package in pharo 2.0.

For example, for 'é' (UTF8 0xC3A9) I get 0xA6A9, for 'è' (UTF8 0xC3A8) I
get 0xA6AE, for 'à' (UTF8 0xC3A0) I get 0xA686, for 'ù' (UTF8 0xC3B9) I
get 0xA69A, ...

Looking at the smalltalk code I didn't see any translation and of course
if I attempt to use the UTF8TextConverter I get an error.

Any idea ?

Thanks in advance.
Michel.

Reply | Threaded
Open this post in threaded view
|

Re: Bad UT8 encoding got with a SQLite3 query

Sven Van Caekenberghe-2
Hi Michel,

On 24 Nov 2013, at 19:25, Michel <[hidden email]> wrote:

> Hi everyone,
>
> I have a sqlite3 data base which is UTF8 encoded. Accessing to it with a ruby script gives me the right encoding for accented vowel, and doing an hexdump of the file too, but I get a strange one with the sqlite3 package in pharo 2.0.
>
> For example, for 'é' (UTF8 0xC3A9) I get 0xA6A9, for 'è' (UTF8 0xC3A8) I get 0xA6AE, for 'à' (UTF8 0xC3A0) I get 0xA686, for 'ù' (UTF8 0xC3B9) I get 0xA69A, ...
>
> Looking at the smalltalk code I didn't see any translation and of course if I attempt to use the UTF8TextConverter I get an error.
>
> Any idea ?
>
> Thanks in advance.
> Michel.

I know nothing about the sqlite3 code, but if you can’t find unit tests doing non-ascii stuff, and you can't find conversion code, than the original author(s) probably just didn’t implement it.

I might be wrong, but that would be a shame, since utf-8 encoding/decoding is fully supported in Pharo.

Sven