, , , ,

:TODO_DOCUPDATE:

Powershell : Problème affichage des caractères UTF8 dans la console

Le console Powershell n'utilise pas par défaut l'encodage UTF8 :

# Affiche le jeu nom du jeu de caractères utilisé par la console Powershell
[console]::OutputEncoding.EncodingName
 
Europe de l'Ouest (DOS)
 
# Affiche les détails de l'encodage utilisé par la console
[console]::OutputEncoding
 
IsSingleByte      : True
BodyName          : ibm850
EncodingName      : Europe de l'Ouest (DOS)
HeaderName        : ibm850
WebName           : ibm850
WindowsCodePage   : 1252
IsBrowserDisplay  : False
IsBrowserSave     : False
IsMailNewsDisplay : False
IsMailNewsSave    : False
EncoderFallback   : System.Text.InternalEncoderBestFitFallback
DecoderFallback   : System.Text.InternalDecoderBestFitFallback
IsReadOnly        : False
CodePage          : 850

L'encodage utilisé par la console ne peut pas être modifié à la volée, c'est une valeur statique ( on y accède via l'opérateur '::'. Pour la modifier il faut changer l'encodage utilisé par Windows.

L'utilisation d'UTF8 sur l'ensemble du système est considéré même sous Windows 11 comme une fonctionnalité Béta.

Pour activer l'utilisation du jeu de caractère UTF8: