EncodingクラスのGetEncodingsメソッドを使う。バージョン5の環境で実行した結果は以下のとおり。
PS > $PSVersionTable.PSVersion
Major Minor Build Revision
----- ----- ----- --------
5 1 19041 3930
PS > [Text.Encoding]::GetEncodings()
CodePage Name DisplayName
-------- ---- -----------
37 IBM037 IBM EBCDIC (US - カナダ)
437 IBM437 OEM アメリカ合衆国
500 IBM500 IBM EBCDIC (インターナショナル)
(以下、表示省略)
PS > [Text.Encoding]::GetEncodings() | ? {$_.DisplayName -match "日本|Unicode"}
CodePage Name DisplayName
-------- ---- -----------
932 shift_jis 日本語 (シフト JIS)
1200 utf-16 Unicode
1201 utf-16BE Unicode (Big-Endian)
10001 x-mac-japanese 日本語 (Mac)
12000 utf-32 Unicode (UTF-32)
12001 utf-32BE Unicode (UTF-32 ビッグ エンディアン)
20290 IBM290 IBM EBCDIC (日本語カタカナ)
20932 EUC-JP 日本語 (JIS 0208-1990 および 0212-1990)
50220 iso-2022-jp 日本語 (JIS)
50221 csISO2022JP 日本語 (JIS 1 バイト カタカナ可)
50222 iso-2022-jp 日本語 (JIS 1 バイト カタカナ可 - SO/SI)
51932 euc-jp 日本語 (EUC)
65000 utf-7 Unicode (UTF-7)
65001 utf-8 Unicode (UTF-8)
バージョン7の環境で実行した結果は以下のとおり。
PS > $PSVersionTable.PSVersion
Major Minor Patch PreReleaseLabel BuildLabel
----- ----- ----- --------------- ----------
7 4 0
PS > [Text.Encoding]::GetEncodings()
CodePage Name DisplayName
-------- ---- -----------
932 shift_jis Japanese (Shift-JIS)
860 IBM860 Portuguese (DOS)
861 ibm861 Icelandic (DOS)
(以下、表示省略)
PS > [Text.Encoding]::GetEncodings() | ? {$_.DisplayName -match "Japanese|Unicode"}
CodePage Name DisplayName
-------- ---- -----------
932 shift_jis Japanese (Shift-JIS)
10001 x-mac-japanese Japanese (Mac)
20932 EUC-JP Japanese (JIS 0208-1990 and 0212-1990)
20290 IBM290 IBM EBCDIC (Japanese katakana)
1200 utf-16 Unicode
1201 utf-16BE Unicode (Big-Endian)
12000 utf-32 Unicode (UTF-32)
12001 utf-32BE Unicode (UTF-32 Big-Endian)
65001 utf-8 Unicode (UTF-8)