【发布时间】:2017-04-29 16:44:28
【问题描述】:
我们有一个旧的 MFC c++ 应用程序写入 SQLite 数据库和另一个 C# 应用程序从数据库中读取。
C++ 应用程序在俄罗斯 Windows 计算机的数据库中写入“шаг потока работы”(西里尔字符)。
当同一个 C++ 应用程序在西欧(拉丁语)Windows 计算机上读取它时,它会将其读取为“øàã ïîòîêà ðàáîòû”(拉丁语表示)。
当 C# 应用程序读取它时,它会将其读取为“��� ������ ����”(Unicode 表示)。
这些应用程序都没有在数据库中指定编码类型。我想阅读 C# 中的原文。
在阅读文本时,我找不到指定编码类型的正确方法。
我已经尝试过诸如Data Source=c:\mydb.db;Version=3;UTF8Encoding=True; 之类的连接字符串,但到目前为止还没有成功。
我还尝试从“��� ������ ����”中获取字节数组并转换为西里尔文,但失败了。
有谁知道如何从 SQLite 数据库中读取原始的俄语文本?
【问题讨论】:
标签: c# sql sqlite unicode encoding