使用C#编码重音字符

时间:2014-07-10 05:01:58

标签: c# postgresql

当我尝试显示 postgresql Exception 中的消息文本时,重音字符无法正确显示。

使用此代码:

catch (Exception e)
{
    MessageBox.Show("Incorrect user name / password\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n" + e.Message);
    return null;
}

我得到了这个输出:

enter image description here

当我尝试这段代码时:

catch (Exception e)
{
    string sMessage = Encoding.UTF8.GetString(Encoding.Default.GetBytes(e.Message));
    MessageBox.Show("Incorrect user name / password\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n" + sMessage);
    return null;
}

我得到了这个输出:

enter image description here

即使我这样编码,消息也没有正确显示,我仍然没有看到加重的字符。

你能告诉我我错过了什么吗?


我在 Postgresql 方面进行测试,但它还没有工作:

SHOW CLIENT_ENCODING;
SHOW SERVER_ENCODING;

两者都设置为 UTF8

enter image description here enter image description here

但这并没有解决我的问题然而,仍然有同样的问题:(

我直接尝试使用consol来查看问题是否来自consol编码,但它在控制台上似乎完美无缺:

enter image description here

0 个答案:

没有答案