Make sure the SQLite on Android uses UTF-8 as a charset Make sure the SQLite on Android uses UTF-8 as a charset sqlite sqlite

Make sure the SQLite on Android uses UTF-8 as a charset


Given that sqlite only supports UTF-8 and UTF-16 as the encodings, you would have noticed if Android would create databases in something other than UTF-8. sqlite3_open defaults to create the database in UTF-8, and that is what Android is likely to use.


You need to make use of the encoding PRAGMA:

PRAGMA encoding = "UTF-8";


By default Android SQLite uses UTF-8. I had the same problem with special characters, but because when I populated the database on the first launch I used a txt file with another charset.