C# 用C语言编码重音字符#

C# 用C语言编码重音字符#,c#,postgresql,C#,Postgresql,当我试图显示来自postgresql异常的消息文本时,重音字符无法正确显示 使用此代码: 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; } catch (Exception e) { string sMessage = Encoding.UTF8.GetStr

当我试图显示来自postgresql异常的消息文本时,重音字符无法正确显示

使用此代码:

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;
}
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;
}
我得到这个输出:

当我尝试此代码时:

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;
}
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;
}
我得到这个输出:

即使我这样做编码的消息显示不正确,我仍然看不到重音字符

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


我测试的东西,在Postgresql方面,但它还不起作用:

SHOW CLIENT_ENCODING;
SHOW SERVER_ENCODING;
两者都设置为UTF8

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

我尝试直接使用控制台,看看问题是否来自控制台编码,但它似乎在控制台上工作得很好:


如果用户选择的字体不支持重音字符,则可能会发生这种情况。请同时参阅:感谢您的回复,我尝试显示的消息是一个例外,我从“Pgsql”中获得它软件,所以我不知道如何解决这个问题,这个字符应该正确显示,因为它是法语。您是否尝试在自己的错误消息中包含重音字符?例如,尝试
MessageBox.Show(“Café”);
。如果显示正确,则表明您的PgSQL接口有问题。请尝试
将客户端赋给…
(已找到)。请参阅。由于数据库编码用作默认编码,请检查数据库的编码是否与UTF8不匹配。