【发布时间】:2010-04-23 14:53:30
【问题描述】:
我从 Windows-1250 代码页中的一些 dll(它是一些外部数据源的包装器)接收字符串,我想将它们正确(作为 unicode)插入到 SQL Server 数据库中的表中。由于数据库中应保存该数据的特定行是 NVarchar 类型,因此我只需要将其在我的 C# 代码中转换为 unicode 并将其作为参数传递。一切都很好,但我偶然发现了转换步骤。
我尝试了以下方法,但不起作用:
private static String getUnicodeValue(string string2Encode) //
{
Encoding srcEncoding = Encoding.GetEncoding("Windows-1250");
UnicodeEncoding dstEncoding = new UnicodeEncoding();
byte[] srcBytes = srcEncoding.GetBytes(string2Encode);
byte[] dstBytes = dstEncoding.GetBytes(string2Encode);
return dstEncoding.GetString(dstBytes);
}
当我将此返回的字符串插入表时,我没有得到正确的字母,例如 Đ、đ、Č、č、Ć 或 ć。
请帮忙! :)
【问题讨论】: