检查下Locale设置?

我专门创建虚拟机测试了一下,系统默认Locale设置为 en-US,Code Page 437
using System.Text; Console.WriteLine($"Default output encoding class: {Console.OutputEncoding}"); Console.WriteLine($"Current output encoding: {Console.OutputEncoding.EncodingName}"); Console.WriteLine("Visual Studio 2022自带的控制台为什么还会中文乱码?"); Console.WriteLine(); Console.OutputEncoding = Encoding.Unicode; Console.WriteLine($"Current output encoding: {Console.OutputEncoding.EncodingName}"); Console.WriteLine("Visual Studio 2022自带的控制台为什么还会中文乱码?"); Console.WriteLine(); Console.OutputEncoding = Encoding.UTF8; Console.WriteLine($"Current output encoding: {Console.OutputEncoding.EncodingName}"); Console.WriteLine("Visual Studio 2022自带的控制台为什么还会中文乱码?");输出为
Default output encoding class: System.Text.OSEncoding Current output encoding: Codepage - 437 Visual Studio 2022???????????????? Current output encoding: Unicode Visual Studio 2022自带的控制台为什么还会中文乱码? Current output encoding: Unicode (UTF-8) Visual Studio 2022自带的控制台为什么还会中文乱码?可见主要原因是 C# 的 Console 在默认情况下使用的是 System.Text.OSEncoding 来编码控制台输出,受系统的 Locale 设置影响,设置为 UTF16 或 UTF8 Encoding 之后就能正常输出中文了。为何题主 JetBrains Rider 里能正常输出我就不清楚了。