次の方法で共有


コード ページのエンコーディング サポート

更新 : 2007 年 11 月

.NET Framework で Unicode を使用すると、アプリケーションがコード ページを参照する必要がなくなるため、国際対応アプリケーションの開発が簡素化されます。コード ページとは、選択された文字コード (コード ポイントとして表される文字) を特定の順序で並べたリストです。コード ページは通常、共通書記体系を共有する特定の言語または言語グループをサポートするように定義されています。

Windows コード ページには、0 から始まる 256 のコード ポイントが含まれています。コード ポイント 0 ~ 127 が表す各文字は、ほとんどのコード ページで同一であるため、連続性と古いコードの利用を実現できます。コード ポイント 128 ~ 255 が表す文字は、コード ページによって異なります。たとえば、コード ページ 1253 には、ギリシャ語書記体系で必要な文字コードが含まれています。コード ページ 1252 には、英語、ドイツ語、フランス語などのラテン語書記体系の文字を表す文字コードが含まれています。コード ページ 1253 の最後の 128 のコード ポイントにはギリシャ文字が含まれており、コード ページ 1252 の最後の 128 のコード ポイントにはアクセント記号付き文字が含まれています。このため、アプリケーションでギリシャ語とドイツ語を同じコード ストリームに格納する場合には、参照先コード ページを示す識別子を含める必要があります。

中国語、日本語、韓国語など、256 以上の文字から成る言語に対応するため、2 バイト文字セット (DBCS) スキームが開発されました。DBCS では、コード ポイントのペア (2 バイト) が 1 つの文字を表します。アプリケーションで DBCS データを処理する場合、DBCS 文字の最初のバイト (先頭バイト) だけが処理されることはありません。先頭バイトとその後に続く後続バイトの組み合わせが処理されます。このスキームでは、日本語や中国語など、2 種類の言語を組み合わせて同じデータ ストリームで使用することはできません。これは、2 バイト コード ポイントのペアが表す文字が、コード ページによって異なるためです。

.NET Framework では、コード ページを使用してエンコードされた文字がサポートされています。アプリケーションで指定したコード ページのターゲット エンコーディング オブジェクトを作成するには、GetEncoding メソッドを使用します。コード ページ 1252 のエンコーディングを作成するコード例を次に示します。

Encoding enc = Encoding.GetEncoding(1252)
Encoding enc = Encoding.GetEncoding(1252);

アプリケーションでは、指定したコード ページに対応する Encoding オブジェクトを作成した後で、このオブジェクトを使用して、Encoding クラスでサポートされている他の操作を実行できます。このクラスの使用例については、「Unicode エンコーディングの使用」の「エンコーディング クラスの使用」を参照してください。

参照

概念

.NET Framework での Unicode