我正在从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);
}
当我把这个返回的字符串插入到表中时,我没有得到像_、_、_、_、_、_这样的正确字母。
求求你了,救命!:)