Microsoft Visual Studio 2022调试控制台中文显示异常求助
解决方案
核心结论
替换为PowerShell本身无法直接解决问题,关键是让VS使用支持UTF-8的终端(如Windows Terminal)或调整编码匹配设置。
具体解决方法
配置VS使用Windows Terminal
- 打开VS2022,依次进入「工具」→「选项」→「调试」→「常规」
- 勾选「使用Windows Terminal进行控制台调试启动」(需VS2022 17.1及以上版本支持)
- 重启VS后调试,Windows Terminal原生支持UTF-8,中文显示恢复正常。
强制代码使用UTF-8编码输出
在代码开头添加以下代码,强制控制台输入输出使用UTF-8:Console.OutputEncoding = System.Text.Encoding.UTF8; Console.InputEncoding = System.Text.Encoding.UTF8;此方法无需修改终端设置,在Windows Console Host下也能生效。
永久修改Windows Console Host编码
- 打开「控制面板」→「区域」→「管理」→「更改系统区域设置」
- 勾选「Beta版:使用Unicode UTF-8提供全球语言支持」,重启系统后生效
- 注意:该设置会影响系统全局编码,部分旧软件可能出现兼容性问题。
关于PowerShell的说明
如果是Windows Terminal中的PowerShell实例,它支持UTF-8,能解决乱码;但如果是基于Windows Console Host运行的PowerShell,依然会因编码不匹配出现乱码。所以核心是让VS调用Windows Terminal,而非单纯替换为PowerShell。
内容的提问来源于stack exchange,提问作者Lorenzo Yang
相关产品推荐
相关产品推荐

