腕時計の沼、オーディオの沼、PCの沼。『タクジの沼』

文字化け対処法メモ

$OutputEncoding で、出力文字コードを変更できます。

PS > $OutputEncoding.EncodingName
US-ASCII
PS > $OutputEncoding = [console]::OutputEncoding;
PS > $OutputEncoding.EncodingName
日本語 (シフト JIS)
PS > $OutputEncoding = New-Object System.Text.UTF8Encoding;
PS > $OutputEncoding.EncodingName
Unicode (UTF-8)
PS > $OutputEncoding


BodyName          : utf-8
EncodingName      : Unicode (UTF-8)
HeaderName        : utf-8
WebName           : utf-8
WindowsCodePage   : 1200
IsBrowserDisplay  : True
IsBrowserSave     : True
IsMailNewsDisplay : True
IsMailNewsSave    : True
IsSingleByte      : False
EncoderFallback   : System.Text.EncoderReplacementFallback
DecoderFallback   : System.Text.DecoderReplacementFallback
IsReadOnly        : True
CodePage          : 65001

コンソール上のエンコーディング方式をUTF-8に設定する。

PS > [Console]::OutputEncoding = [System.Text.Encoding]::GetEncoding('utf-8')

システムコンソールのOutputEncodingをUTF-8に設定する。

PS > [System.Console]::OutputEncoding = [System.Text.UTF8Encoding]::new()
PS > [System.Console]::OutputEncoding


BodyName          : utf-8
EncodingName      : Unicode (UTF-8)
HeaderName        : utf-8
WebName           : utf-8
WindowsCodePage   : 1200
IsBrowserDisplay  : True
IsBrowserSave     : True
IsMailNewsDisplay : True
IsMailNewsSave    : True
IsSingleByte      : False
EncoderFallback   : System.Text.EncoderReplacementFallback
DecoderFallback   : System.Text.DecoderReplacementFallback
IsReadOnly        : False
CodePage          : 65001