EncodingProvider クラス

定義

特定のプラットフォームで利用できないエンコードを提供する、エンコーディング プロバイダーの基底クラスを提供します。Provides the base class for an encoding provider, which supplies encodings that are unavailable on a particular platform.

public ref class EncodingProvider abstract
public abstract class EncodingProvider
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class EncodingProvider
type EncodingProvider = class
Public MustInherit Class EncodingProvider
継承
EncodingProvider
派生
属性

注釈

エンコーディングプロバイダーは、特定のターゲットプラットフォームでは使用できないエンコーディングを提供します。An encoding provider supplies encodings that are not otherwise available on a particular target platform.

Windows デスクトップの .NET Framework では、多数の文字エンコーディングとコードページがサポートされています。The .NET Framework on the Windows desktop supports a large number of character encodings and code pages. Encoding.GetEncodings メソッドを呼び出すことにより、Windows デスクトップの .NET Framework で使用可能なエンコーディングの完全な一覧を取得できます。You can get a complete list of encodings available in the .NET Framework on the Windows desktop by calling the Encoding.GetEncodings method. 一方、.NET Core では、既定では次のエンコーディングのみがサポートされます。.NET Core, on the other hand, by default supports only the following encodings:

  • ASCII (コードページ 20127)。 Encoding.ASCII プロパティによって返されます。ASCII (code page 20127), which is returned by the Encoding.ASCII property.

  • ISO-8859-1 (コードページ 28591)。ISO-8859-1 (code page 28591).

  • UTF-7 (コードページ 65000)。これは Encoding.UTF7 プロパティによって返されます。UTF-7 (code page 65000), which is returned by the Encoding.UTF7 property.

  • UTF-8 (コードページ 65001)。 Encoding.UTF8 プロパティによって返されます。UTF-8 (code page 65001), which is returned by the Encoding.UTF8 property.

  • UTF-16 および 16LE (コードページ 1200)。これは Unicode プロパティによって返されます。UTF-16 and UTF-16LE (code page 1200), which is returned by the Unicode property.

  • UTF-16 BE (コードページ 1201)。 bigEndian 値が trueUnicodeEncoding.UnicodeEncoding(Boolean, Boolean) または UnicodeEncoding.UnicodeEncoding(Boolean, Boolean) コンストラクターを呼び出すことによってインスタンス化されます。UTF-16BE (code page 1201), which is instantiated by calling the UnicodeEncoding.UnicodeEncoding(Boolean, Boolean) or UnicodeEncoding.UnicodeEncoding(Boolean, Boolean) constructor with a bigEndian value of true.

  • 32 UTF-8 と UTF-16 LE (コードページ 12000)。 Encoding.UTF32 プロパティによって返されます。UTF-32 and UTF-32LE (code page 12000), which is returned by the Encoding.UTF32 property.

  • UTF (コードページ 12001) は、bigEndian パラメーターを持ち、メソッド呼び出しで true の値を提供する UTF32Encoding コンストラクターを呼び出すことによってインスタンス化されます。UTF-32BE (code page 12001), which is instantiated by calling an UTF32Encoding constructor that has a bigEndian parameter and providing a value of true in the method call.

.NET Framework 4.6 以降、EncodingProvider は、.NET Framework で使用できないエンコードを使用できるようにする基本クラスです。Starting with the .NET Framework 4.6, EncodingProvider is the base class that makes otherwise unavailable encodings available to the .NET Framework. これには、次の手順が含まれます。This involves the following steps:

  1. 2つの抽象 GetEncoding オーバーロード、GetEncoding(Int32) および GetEncoding(String)をオーバーライドする EncodingProvider のサブクラスを定義します。Define a subclass of EncodingProvider that overrides the two abstract GetEncoding overloads, GetEncoding(Int32) and GetEncoding(String). これらのオーバーロードは、コードページ識別子および名前によって、サポートされていないエンコードを返します。These overloads return the otherwise unsupported encoding by code page identifier and by name. 引数0を指定して GetEncoding(Int32) メソッドを呼び出すと、既定のエンコーディングを返すこともできます。Note that you can also choose to return a default encoding if the GetEncoding(Int32) method is called with an argument of 0.

  2. 必要に応じて、仮想 GetEncoding(Int32, EncoderFallback, DecoderFallback) および GetEncoding(String, EncoderFallback, DecoderFallback) メソッドをオーバーライドできます。Optionally, you can override the virtual GetEncoding(Int32, EncoderFallback, DecoderFallback) and GetEncoding(String, EncoderFallback, DecoderFallback) methods. 基本クラスには既定の実装が用意されているため、ほとんどの場合、これは必要ありません。In most cases, this is not necessary, since the base class provides a default implementation.

  3. EncodingProvider インスタンスを Encoding.RegisterProvider メソッドに渡して、EncodingProvider オブジェクトによって提供されるエンコーディングを共通言語ランタイムで使用できるようにします。Pass the EncodingProvider instance to the Encoding.RegisterProvider method to make the encodings supplied by the EncodingProvider object available to the common language runtime.

  4. Encoding.GetEncoding オーバーロードを呼び出して、エンコーディングを取得します。Call an Encoding.GetEncoding overload to retrieve the encoding. Encoding.GetEncoding メソッドは、対応する EncodingProvider.GetEncoding を呼び出して、要求されたエンコーディングを提供できるかどうかを判断します。The Encoding.GetEncoding method will call the corresponding EncodingProvider.GetEncoding to determine whether it can supply the requested encoding.

.NET Framework クラスライブラリには、1つの静的プロパティ CodePagesEncodingProvider.Instanceが用意されています。これは EncodingProvider オブジェクトを返します。これにより、デスクトップ .NET Framework クラスライブラリで使用可能なエンコーディングの完全なセットを .NET Core.NET Core アプリケーションで使用できるようになります。The .NET Framework Class Library provides one static property, CodePagesEncodingProvider.Instance, that returns an EncodingProvider object that makes the full set of encodings available on the desktop .NET Framework Class Library available to .NET Core.NET Core applications. さらに、EncodingProvider クラスから派生させて、独自のエンコーディングを使用できるようにすることができます。In addition, you can derive from the EncodingProvider class to make your own encodings available.

コンストラクター

EncodingProvider()

EncodingProvider クラスの新しいインスタンスを初期化します。Initializes a new instance of the EncodingProvider class.

メソッド

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判定します。Determines whether the specified object is equal to the current object.

(継承元 Object)
GetEncoding(Int32)

指定したコード ページ ID に関連付けられたエンコーディングを返します。Returns the encoding associated with the specified code page identifier.

GetEncoding(Int32, EncoderFallback, DecoderFallback)

指定したコード ページ ID に関連付けられたエンコーディングを返します。Returns the encoding associated with the specified code page identifier. パラメーターには、エンコードできない文字とデコードできないバイト シーケンスのためのエラー ハンドラーを指定します。Parameters specify an error handler for characters that cannot be encoded and byte sequences that cannot be decoded.

GetEncoding(String)

指定した名前のエンコーディングを返します。Returns the encoding with the specified name.

GetEncoding(String, EncoderFallback, DecoderFallback)

指定した名前に関連付けられたエンコーディングを返します。Returns the encoding associated with the specified name. パラメーターには、エンコードできない文字とデコードできないバイト シーケンスのためのエラー ハンドラーを指定します。Parameters specify an error handler for characters that cannot be encoded and byte sequences that cannot be decoded.

GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(継承元 Object)
GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(継承元 Object)
MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(継承元 Object)
ToString()

現在のオブジェクトを表す string を返します。Returns a string that represents the current object.

(継承元 Object)

適用対象

こちらもご覧ください