У меня есть приложение C#. NET Core. Я запускаю
System.Console.WriteLine(System.Text.Encoding.Default.WebName);
и получаю utf-8
Однако, если я открываю PowerShell и выдаю
[System.Text.Encoding]::Default
, я получаю
IsSingleByte : True
BodyName : iso-8859-1
EncodingName : Westeuropäisch (Windows)
HeaderName : Windows-1252
WebName : Windows-1252
WindowsCodePage : 1252
IsBrowserDisplay : True
IsBrowserSave : True
IsMailNewsDisplay : True
IsMailNewsSave : True
EncoderFallback : System.Text.InternalEncoderBestFitFallback
DecoderFallback : System.Text.InternalDecoderBestFitFallback
IsReadOnly : True
CodePage : 1252
Почему системная кодировка отличается от кодировки по умолчанию? И как мне получить системное кодирование в этих условиях? Я имею в виду, я понял, что могу получить Windows -Codepage 1252 in. NET Core с
System.Text.Encoding.GetEncoding("iso-8859-1").WindowsCodePage
, но как мне определить кодовую страницу системы?