我正在使用 SQLite 数据库开发 Windows 应用商店应用程序 (C#)。
问题
如果我有一个像“qwerôty”这样的特殊字符,当我的应用程序检索这个值时,字符串对象包含“qwerty”(没有这个特殊字符)。
数据库创建
我使用sqlite3实用程序创建数据库,然后将所有查询(创建表,插入...)写入文件(UTF-8 编码),然后在 sqlite3 的命令提示符中复制和粘贴所有查询。
当我从表中选择 * 时,我看到“qwerôty”,但一旦在我的应用程序中,字符串不包含“ô”。
应用内代码
以下是我从 SQLite 数据库中检索数据的方法:
private SQLiteAsyncConnection conn = new SQLiteAsyncConnection(DbPath);
return await conn.Table<BusinessObject>().ToListAsync();
字符串属性在 BusinessObject 对象中
我猜
我认为我用sqlite3创建的 sqlite 文件不是以 UTF-8 编码的。当我使用 Windows 内置记事本打开它并执行“另存为”时,选择的编码是 ANSI。但我找不到如何创建以 UTF-8 编码的数据库。
如果您对我的问题有任何想法,请提前致谢。
拉菲