.NET 中文程序遇到英文操作系统,控制台输出乱码

hmister
2023-02-17 / 7 评论 / 694 阅读 / 正在检测是否收录...

当我们在国内编写的程序,遇上英文的操作系统,输出的日志全是 ??? ? 。输出的一切内容全变成乱码,这就很让人头大 ? ,很不方便调试。为了让开发调试变的顺利,我找到了下面的解决办法。此办法可能不是唯一的解决的方案,但至少我验证过他是可以解决的,并且我正在使用 ?

因为我使用的是控制台程序,部署到英文操作系统后,我发现他的页面编码格式变为了 407 (OEM-美国) 看到这个我就知道了他很不对劲,果然出现乱码 ? 。

我的解决办法很简单,就是在程序运行的时候改变其页面的编码格式,然后就解决了。具体代码如下:

Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
Console.OutputEncoding = Encoding.GetEncoding("GB2312");

当我加上这两行代码后,再次运行程序,发现页面编码格式就变成 936 (ANSI/OEM-简体中文GBK) 。看到这个就说明问题已经解决了 ?

0

评论 (7)

取消
  1. 头像
    vjgvrhdvjv
    Windows 10 · Google Chrome

    跳出常规思维,角度独特,令人耳目一新。

    回复
  2. 头像
    kcfnkieino
    Windows 10 · Google Chrome

    对国际规则的解读具有前瞻性。

    回复
  3. 头像
    pedpvvuksw
    Windows 10 · Google Chrome

    这篇文章如同一幅色彩斑斓的画卷,每一笔都充满了独特的创意。

    回复
  4. 头像
    npgczhughw
    Windows 10 · Google Chrome

    新车即将上线 真正的项目,期待你的参与

    回复
  5. 头像
    dfepnkzgee
    Windows 10 · Google Chrome

    新盘首开 新盘首开 征召客户!!!

    回复
  6. 头像
    jvfmnmwjqb
    Windows 10 · Google Chrome

    2025年10月新盘 做第一批吃螃蟹的人coinsrore.com
    新车新盘 嘎嘎稳 嘎嘎靠谱coinsrore.com
    新车首发,新的一年,只带想赚米的人coinsrore.com
    新盘 上车集合 留下 我要发发 立马进裙coinsrore.com
    做了几十年的项目 我总结了最好的一个盘(纯干货)coinsrore.com
    新车上路,只带前10个人coinsrore.com
    新盘首开 新盘首开 征召客户!!!coinsrore.com
    新项目准备上线,寻找志同道合的合作伙伴coinsrore.com
    新车即将上线 真正的项目,期待你的参与coinsrore.com
    新盘新项目,不再等待,现在就是最佳上车机会!coinsrore.com
    新盘新盘 这个月刚上新盘 新车第一个吃螃蟹!coinsrore.com

    回复
  7. 头像
    cjmvhondem
    Windows 10 · Google Chrome

    2025年10月新盘 做第一批吃螃蟹的人coinsrore.com
    新车新盘 嘎嘎稳 嘎嘎靠谱coinsrore.com
    新车首发,新的一年,只带想赚米的人coinsrore.com
    新盘 上车集合 留下 我要发发 立马进裙coinsrore.com
    做了几十年的项目 我总结了最好的一个盘(纯干货)coinsrore.com
    新车上路,只带前10个人coinsrore.com
    新盘首开 新盘首开 征召客户!!!coinsrore.com
    新项目准备上线,寻找志同道合的合作伙伴coinsrore.com
    新车即将上线 真正的项目,期待你的参与coinsrore.com
    新盘新项目,不再等待,现在就是最佳上车机会!coinsrore.com
    新盘新盘 这个月刚上新盘 新车第一个吃螃蟹!coinsrore.com

    回复