« [C#]日本語を含む文字列の表示幅をバイト単位で指定する | トップページ | [R]二つのtibbleを一つに結合(左外部結合)する »

2024年3月 5日 (火)

[C#]コードページ識別子の一覧を得る

コードページとはWindowsにおいて文字符号化方式を判別するためのもので、特定の文字符号化方式を表すものとしてコードページ識別子(Code Page Identifiers)というのものを割り当てて定義している。それの一覧を表示する方法。

SamplesEncoding.cs

using System;
using System.Text;
Console.Write("CodePage Identifier and Name BrDisp BrSave ");
Console.WriteLine("MNDisp MNSave 1-Byte ReadOnly");
foreach(EncodingInfo ei in Encoding.GetEncodings()) {
Encoding e = ei.GetEncoding();
Console.Write("{0,-6} {1,-25} ", ei.CodePage, ei.Name);
Console.Write("{0,-7} {1,-7} ", e.IsBrowserDisplay, e.IsBrowserSave);
Console.Write("{0,-7} {1,-7} ", e.IsMailNewsDisplay, e.IsMailNewsSave);
Console.WriteLine("{0,-7} {1,-7}", e.IsSingleByte, e.IsReadOnly);
}

動作させてみる。

>SamplesEncoding.exe
CodePage Identifier and Name BrDisp BrSave MNDisp MNSave 1-Byte ReadOnly
37 IBM037 False False False False True True
(表示省略)
65000 utf-7 False False True True False True
65001 utf-8 True True True True False True
>SamplesEncoding.exe | findstr /i "jis utf jp"
932 shift_jis True True True True False True
1200 utf-16 False True False False False True
1201 utf-16BE False False False False False True
12000 utf-32 False False False False False True
12001 utf-32BE False False False False False True
20932 EUC-JP False False False False False True
50220 iso-2022-jp False False True True False True
50221 csISO2022JP False True True True False True
50222 iso-2022-jp False False False False False True
51932 euc-jp True True True True False True
65000 utf-7 False False True True False True
65001 utf-8 True True True True False True

コードページ識別子の詳細については、以下のページを参照のこと。
https://learn.microsoft.com/en-us/dotnet/api/system.text.encoding.getencodings?view=net-8.0#system-text-encoding-getencodings

« [C#]日本語を含む文字列の表示幅をバイト単位で指定する | トップページ | [R]二つのtibbleを一つに結合(左外部結合)する »

C#」カテゴリの記事

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

« [C#]日本語を含む文字列の表示幅をバイト単位で指定する | トップページ | [R]二つのtibbleを一つに結合(左外部結合)する »

無料ブログはココログ

■■

■■■