1

我正在使用 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 编码的数据库。

如果您对我的问题有任何想法,请提前致谢。

拉菲

4

1 回答 1

0

正如狗仔队所说,问题来自记事本

于 2016-09-28T13:34:13.997 回答