Какова правильная (предпочтительная) кодировка профиля PowerShell? - PullRequest
1 голос
/ 12 февраля 2020

Я посмотрел на Inte rnet и не могу найти соответствующую информацию. Моя программа должна записать некоторый код PowerShell в профиль PowerShell. Если профиль не существует, моя программа создаст его. Проблема в том, какую кодировку следует использовать для создания профиля PowerShell. Должен ли я использовать UTF8? Или UTF8 с спецификацией?

1 Ответ

3 голосов
/ 12 февраля 2020

Технически профиль PowerShell использует приведенную ниже кодировку (из моего собственного профиля 5.1).

BodyName          : iso-8859-1
EncodingName      : Western European (Windows)
HeaderName        : Windows-1252
WebName           : Windows-1252

Тогда как файл с UTF-8 будет выглядеть следующим образом.

BodyName          : utf-8
EncodingName      : Unicode (UTF-8)
HeaderName        : utf-8
WebName           : utf-8

Разница между ASCII, ISO-8859-1 и UTF-8:

ASCII: 7 bits. 128 code points.
ISO-8859-1: 8 bits. 256 code points.
UTF-8: 8-32 bits. 1,112,064 code points.

Это ранее обсуждалось в В чем разница между UTF-8 и ISO-8859- 1?

Вы можете проверить кодировку файла, используя приведенные ниже.

$reader = [System.IO.StreamReader]::new("File path", [System.Text.Encoding]::default,$true)
$peek = $reader.Peek()
$reader.currentencoding
$reader.close()

Другие параметры кодирования, которые будут работать.

utf8: UTF-8 without BOM
utf8bom: UTF-8 with BOM
utf16le: Little endian UTF-16
utf16be: Big endian UTF-16
windows1252: Windows-1252
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...