4

我一直在使用 Windows 8 应用程序上的 Sqlite 数据库。(用于 Windows 运行时的 Sqlite)
插入数据库时​​出现土耳其语字符问题。
我该如何解决这个问题。你能帮助我吗?
非常感谢。
简单的来。

using (var db = new SQLite.SQLiteConnection(App.DbPath))
    db.Execute("Insert Into Stock (Name) Values('ŞşİıĞğ')");

我试试这个,但结果-> ÞþÝýÐð

string a = "ŞşİıĞğ";    
string b = string.Empty;    
byte[] utf8Bytes = Encoding.UTF8.GetBytes(a);    
b= Encoding.UTF8.GetString(utf8Bytes, 0, utf8Bytes.Length);    

using (var db = new SQLite.SQLiteConnection(App.DbPath))
    db.Execute("Insert Into Stock (Name) Values('"+ b +"')");
4

1 回答 1

3

最有可能的问题是您的列无法正确处理 UTF-16(unicode)(可能是客户端 API)。最安全的选择是在客户端与 utf-8 进行转换,然后读取/写入数据库。

System.Encoding.UTF8拥有所有的魔力。

于 2013-04-05T08:50:04.707 回答