EncodingProvider.GetEncoding メソッド

定義

エンコーディングを返します。Returns an encoding.

オーバーロード

GetEncoding(Int32)

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

GetEncoding(String)

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

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, 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.

GetEncoding(Int32)

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

public:
 abstract System::Text::Encoding ^ GetEncoding(int codepage);
public abstract System.Text.Encoding GetEncoding (int codepage);
abstract member GetEncoding : int -> System.Text.Encoding
Public MustOverride Function GetEncoding (codepage As Integer) As Encoding

パラメーター

codepage
Int32

要求されたエンコーディングのコード ページ ID。The code page identifier of the requested encoding.

戻り値

指定されたコード ページに関連付けられたエンコード。または、この nullEncodingProvider に対応する有効なエンコーディングを返すことができない場合は codepageThe encoding that is associated with the specified code page, or null if this EncodingProvider cannot return a valid encoding that corresponds to codepage.

注釈

継承に関する注意事項Notes to inheritors

Encoding.getencoding (Int32)メソッドをオーバーライドして、EncodingProvider サブクラスでサポートされているエンコーディングまたはエンコーディングを返します。You override the GetEncoding(Int32) method to return the encoding or encodings supported by your EncodingProvider subclass. ユーザーコードがencoding.getencoding (Int32)メソッドを呼び出すことによってエンコーディングを取得しようとすると、メソッドは、有効なエンコーディングを返すまで、登録されているすべてのエンコーディングプロバイダーに codepage 識別子を渡します。When user code attempts to retrieve an encoding by calling the GetEncoding(Int32) method, the method passes the codepage identifier to every registered encoding provider until one returns a valid encoding. 有効なエンコーディングが返されない場合、 encoding.getencoding (Int32)メソッドは、コードページ識別子が codepageであるキャッシュされたエンコーディングを取得しようとします。If none returns a valid encoding, the GetEncoding(Int32) method attempts to retrieve a cached encoding whose code page identifier is codepage. このため、codepage がサポートするエンコーディングのコードページ識別子でない場合、メソッドは nullを返す必要があります。例外がスローされることはありません。Because of this, if codepage is not the code page identifier of an encoding that you support, the method should return null; it should never throw an exception.

codepage 引数の値が0の場合は、既定のコードページを返すように選択することもできます。Note that you can also choose to return a default code page if the value of the codepage argument is 0.

呼び出し元へのメモNotes to callers

このメソッドは、 encoding.getencoding (Int32)メソッドによって呼び出されます。This method is called by the Encoding.GetEncoding(Int32) method. ユーザーコードから直接呼び出すことはできません。You should not call it directly from user code.

注意 (実装者)

GetEncoding(Int32) メソッドをオーバーライドして、EncodingProvider サブクラスでサポートされているエンコーディングまたはエンコーディングを返します。You override the GetEncoding(Int32) method to return the encoding or encodings supported by your EncodingProvider subclass. ユーザーコードが GetEncoding(Int32) メソッドを呼び出すことによってエンコーディングを取得しようとすると、メソッドは、1つのが有効なエンコーディングを返すまで、すべての登録済みエンコードプロバイダーに codepage 識別子を渡します。When user code attempts to retrieve an encoding by calling the GetEncoding(Int32) method, the method passes the codepage identifier to every registered encoding provider until one returns a valid encoding. 有効なエンコーディングが返されない場合、GetEncoding(Int32) メソッドは、コードページ識別子が codepageであるキャッシュされたエンコーディングを取得しようとします。If none returns a valid encoding, the GetEncoding(Int32) method attempts to retrieve a cached encoding whose code page identifier is codepage. このため、codepage がサポートするエンコーディングのコードページ識別子でない場合、メソッドは nullを返す必要があります。例外がスローされることはありません。Because of this, if codepage is not the code page identifier of an encoding that you support, the method should return null; it should never throw an exception.

注意 (呼び出し元)

このメソッドは、GetEncoding(Int32) メソッドによって呼び出されます。This method is called by the GetEncoding(Int32) method. ユーザーコードから直接呼び出すことはできません。You should not call it directly from user code.

こちらもご覧ください

GetEncoding(String)

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

public:
 abstract System::Text::Encoding ^ GetEncoding(System::String ^ name);
public abstract System.Text.Encoding GetEncoding (string name);
abstract member GetEncoding : string -> System.Text.Encoding
Public MustOverride Function GetEncoding (name As String) As Encoding

パラメーター

name
String

要求されたエンコーディングの名前。The name of the requested encoding.

戻り値

指定された名前に関連付けられたエンコーディング。または、この nullEncodingProvider に対応する有効なエンコーディングを返すことができない場合は nameThe encoding that is associated with the specified name, or null if this EncodingProvider cannot return a valid encoding that corresponds to name.

注釈

継承に関する注意事項Notes to inheritors

Encoding.getencoding (String)メソッドをオーバーライドして、EncodingProvider サブクラスでサポートされているエンコーディングまたはエンコーディングを返します。You override the GetEncoding(String) method to return the encoding or encodings supported by your EncodingProvider subclass. ユーザーコードがencoding.getencoding (String)メソッドを呼び出すことによってエンコーディングを取得しようとすると、メソッドは、有効なエンコーディングを返すまで、登録されているすべてのエンコーディングプロバイダーに name 引数を渡します。When user code attempts to retrieve an encoding by calling the GetEncoding(String) method, the method passes the name argument to every registered encoding provider until one returns a valid encoding. 有効なエンコーディングが返されない場合、 encoding.getencoding (String)メソッドは、名前が nameであるキャッシュされたエンコーディングを取得しようとします。If none returns a valid encoding, the GetEncoding(String) method attempts to retrieve a cached encoding whose name is name. このため、name がサポートするエンコーディングの名前ではない場合、メソッドは nullを返す必要があります。Because of this, if name is not the name of an encoding that you support, the method should return null. メソッドが例外をスローする唯一のケースは、namenull場合です。The only case in which the method should throw an exception is if name is null.

呼び出し元へのメモNotes to callers

このメソッドは、 encoding.getencoding (String)メソッドによって呼び出されます。This method is called by the Encoding.GetEncoding(String) method. ユーザーコードから直接呼び出すことはできません。You should not call it directly from user code.

注意 (実装者)

GetEncoding(String) メソッドをオーバーライドして、EncodingProvider サブクラスでサポートされているエンコーディングまたはエンコーディングを返します。You override the GetEncoding(String) method to return the encoding or encodings supported by your EncodingProvider subclass. ユーザーコードが GetEncoding(String) メソッドを呼び出すことによってエンコーディングを取得しようとすると、メソッドは、1つのが有効なエンコーディングを返すまで、すべての登録済みエンコードプロバイダーに name 引数を渡します。When user code attempts to retrieve an encoding by calling the GetEncoding(String) method, the method passes the name argument to every registered encoding provider until one returns a valid encoding. 有効なエンコーディングが返されない場合、GetEncoding(String) メソッドは、名前が nameであるキャッシュされたエンコーディングを取得しようとします。If none returns a valid encoding, the GetEncoding(String) method attempts to retrieve a cached encoding whose name is name. このため、name がサポートするエンコーディングの名前ではない場合、メソッドは nullを返す必要があります。Because of this, if name is not the name of an encoding that you support, the method should return null. メソッドが例外をスローする唯一のケースは、namenull場合です。The only case in which the method should throw an exception is if name is null.

注意 (呼び出し元)

このメソッドは、GetEncoding(String) メソッドによって呼び出されます。This method is called by the GetEncoding(String) method. ユーザーコードから直接呼び出すことはできません。You should not call it directly from user code.

こちらもご覧ください

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.

public:
 virtual System::Text::Encoding ^ GetEncoding(int codepage, System::Text::EncoderFallback ^ encoderFallback, System::Text::DecoderFallback ^ decoderFallback);
public virtual System.Text.Encoding GetEncoding (int codepage, System.Text.EncoderFallback encoderFallback, System.Text.DecoderFallback decoderFallback);
abstract member GetEncoding : int * System.Text.EncoderFallback * System.Text.DecoderFallback -> System.Text.Encoding
override this.GetEncoding : int * System.Text.EncoderFallback * System.Text.DecoderFallback -> System.Text.Encoding

パラメーター

codepage
Int32

要求されたエンコーディングのコード ページ ID。The code page identifier of the requested encoding.

encoderFallback
EncoderFallback

このエンコーディングで文字をエンコードできない場合にエラー処理プロシージャを提供するオブジェクト。An object that provides an error-handling procedure when a character cannot be encoded with this encoding.

decoderFallback
DecoderFallback

このエンコーディングでバイト シーケンスをデコードできない場合にエラー処理プロシージャを提供するオブジェクト。An object that provides an error-handling procedure when a byte sequence cannot be decoded with this encoding.

戻り値

指定されたコード ページに関連付けられたエンコード。または、この nullEncodingProvider に対応する有効なエンコーディングを返すことができない場合は codepageThe encoding that is associated with the specified code page, or null if this EncodingProvider cannot return a valid encoding that corresponds to codepage.

注釈

encoderFallback パラメーターと decoderFallback パラメーターは、エンコーダーが文字をバイトシーケンスに変換できない場合、またはデコーダーがバイトシーケンスを文字に変換できない場合に使用されるフォールバックストラテジを定義するオブジェクトです。The encoderFallback and decoderFallback parameters are objects that define the fallback strategy used in the event that an encoder cannot convert a character to a sequence of bytes or a decoder cannot convert a sequence of bytes to a character. .NET Framework には、次のフォールバックメカニズムが用意されています。The .NET Framework provides the following fallback mechanisms:

  • 例外フォールバック。Exception fallback. encoderFallback 引数が EncoderExceptionFallbackのインスタンスである場合、または decoderExceptionFallback 引数が DecoderExceptionFallbackのインスタンスである場合、エンコードメソッドは、文字をエンコードできない場合に例外をスローします。バイトシーケンスをデコードできない場合は、デコードメソッドによって例外がスローされます。If the encoderFallback argument is an instance of EncoderExceptionFallback, or the decoderExceptionFallback argument is an instance of DecoderExceptionFallback, the encoding method throws an exception if characters cannot be encoded, and the decoding method throws an exception if a byte sequence cannot be decoded.

  • 置換フォールバック。Replacement fallback. encoderFallback 引数が EncoderReplacementFallbackのインスタンスである場合、または decoderExceptionFallback 引数が DecoderReplacementFallbackのインスタンスの場合、エンコードメソッドとデコードメソッドは、エンコードできない文字とバイトシーケンスをデコードできない文字を置換文字列に置き換えます。If the encoderFallback argument is an instance of EncoderReplacementFallback, or the decoderExceptionFallback argument is an instance of DecoderReplacementFallback, the encoding and decoding methods substitute a replacement string for characters that cannot be encoded and byte sequences cannot be decoded. パラメーターなしのコンストラクターを呼び出すことによって置換フォールバックオブジェクトをインスタンス化した場合、置換文字は "?" になります。If you instantiated the replacement fallback object by calling the parameterless constructor, the replacement character is a "?". EncoderReplacementFallback.EncoderReplacementFallback(String) または DecoderReplacementFallback.DecoderReplacementFallback(String) コンストラクターを呼び出す場合は、置換後の文字列を指定できます。If you call the EncoderReplacementFallback.EncoderReplacementFallback(String) or DecoderReplacementFallback.DecoderReplacementFallback(String) constructor, you can specify the replacement string.

  • 最適フォールバック。Best-fit fallback. EncoderFallback または DecoderFallback クラスから派生させて、最適な置換機構を実装することができます。You can derive from the EncoderFallback or DecoderFallback class to implement a best-fit replacement mechanism.

注意 (継承者)

このメソッドの呼び出しは GetEncoding(Int32) メソッドの実装を使用するため、オーバーライドする必要はありません。Because calls to this method use your implementation of the GetEncoding(Int32) method, you do not have to override it. ユーザーコードが GetEncoding(Int32, EncoderFallback, DecoderFallback) メソッドを呼び出すことによってエンコーディングを取得しようとすると、メソッドは、1つのが有効なエンコーディングを返すまで、すべての登録済みエンコードプロバイダーに codepage 識別子を渡します。When user code attempts to retrieve an encoding by calling the GetEncoding(Int32, EncoderFallback, DecoderFallback) method, the method passes the codepage identifier to every registered encoding provider until one returns a valid encoding. 有効なエンコーディングが返されない場合、GetEncoding(Int32) メソッドは、コードページ識別子が codepageであるキャッシュされたエンコーディングを取得しようとします。If none returns a valid encoding, the GetEncoding(Int32) method attempts to retrieve a cached encoding whose code page identifier is codepage. このため、GetEncoding(Int32, EncoderFallback, DecoderFallback) メソッドをオーバーライドすることを選択した場合、サポートされているエンコーディングのコードページ識別子で codepage ない場合、オーバーライドは null を返す必要があります。例外がスローされることはありません。Because of this, if you do choose to override the GetEncoding(Int32, EncoderFallback, DecoderFallback) method, your override should return null if codepage is not the code page identifier of an encoding that you support; it should never throw an exception.

注意 (呼び出し元)

このメソッドは、GetEncoding(Int32, EncoderFallback, DecoderFallback) メソッドによって呼び出されます。This method is called by the GetEncoding(Int32, EncoderFallback, DecoderFallback) method. ユーザーコードから直接呼び出すことはできません。You should not call it directly from user code.

こちらもご覧ください

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.

public:
 virtual System::Text::Encoding ^ GetEncoding(System::String ^ name, System::Text::EncoderFallback ^ encoderFallback, System::Text::DecoderFallback ^ decoderFallback);
public virtual System.Text.Encoding GetEncoding (string name, System.Text.EncoderFallback encoderFallback, System.Text.DecoderFallback decoderFallback);
abstract member GetEncoding : string * System.Text.EncoderFallback * System.Text.DecoderFallback -> System.Text.Encoding
override this.GetEncoding : string * System.Text.EncoderFallback * System.Text.DecoderFallback -> System.Text.Encoding

パラメーター

name
String

使用するエンコーディングの名前。The name of the preferred encoding.

encoderFallback
EncoderFallback

このエンコーディングで文字をエンコードできない場合にエラー処理プロシージャを提供するオブジェクト。An object that provides an error-handling procedure when a character cannot be encoded with this encoding.

decoderFallback
DecoderFallback

現在のエンコーディングでバイト シーケンスをデコードできない場合にエラー処理プロシージャを提供するオブジェクト。An object that provides an error-handling procedure when a byte sequence cannot be decoded with the current encoding.

戻り値

指定された名前に関連付けられたエンコーディング。または、この nullEncodingProvider に対応する有効なエンコーディングを返すことができない場合は nameThe encoding that is associated with the specified name, or null if this EncodingProvider cannot return a valid encoding that corresponds to name.

注釈

encoderFallback パラメーターと decoderFallback パラメーターは、エンコーダーが文字をバイトシーケンスに変換できない場合、またはデコーダーがバイトシーケンスを文字に変換できない場合に使用されるフォールバックストラテジを定義するオブジェクトです。The encoderFallback and decoderFallback parameters are objects that define the fallback strategy used in the event that an encoder cannot convert a character to a sequence of bytes or a decoder cannot convert a sequence of bytes to a character. .NET Framework には、次のフォールバックメカニズムが用意されています。The .NET Framework provides the following fallback mechanisms:

  • 例外フォールバック。Exception fallback. encoderFallback 引数が EncoderExceptionFallbackのインスタンスである場合、または decoderExceptionFallback 引数が DecoderExceptionFallbackのインスタンスである場合、エンコードメソッドは、文字をエンコードできない場合に例外をスローします。バイトシーケンスをデコードできない場合は、デコードメソッドによって例外がスローされます。If the encoderFallback argument is an instance of EncoderExceptionFallback, or the decoderExceptionFallback argument is an instance of DecoderExceptionFallback, the encoding method throws an exception if characters cannot be encoded, and the decoding method throws an exception if a byte sequence cannot be decoded.

  • 置換フォールバック。Replacement fallback. encoderFallback 引数が EncoderReplacementFallbackのインスタンスである場合、または decoderExceptionFallback 引数が DecoderReplacementFallbackのインスタンスの場合、エンコードメソッドとデコードメソッドは、エンコードできない文字とバイトシーケンスをデコードできない文字を置換文字列に置き換えます。If the encoderFallback argument is an instance of EncoderReplacementFallback, or the decoderExceptionFallback argument is an instance of DecoderReplacementFallback, the encoding and decoding methods substitute a replacement string for characters that cannot be encoded and byte sequences cannot be decoded. パラメーターなしのコンストラクターを呼び出すことによって置換フォールバックオブジェクトをインスタンス化した場合、置換文字は "?" になります。If you instantiated the replacement fallback object by calling the parameterless constructor, the replacement character is a "?". EncoderReplacementFallback.EncoderReplacementFallback(String) または DecoderReplacementFallback.DecoderReplacementFallback(String) コンストラクターを呼び出す場合は、置換後の文字列を指定できます。If you call the EncoderReplacementFallback.EncoderReplacementFallback(String) or DecoderReplacementFallback.DecoderReplacementFallback(String) constructor, you can specify the replacement string.

  • 最適フォールバック。Best-fit fallback. EncoderFallback または DecoderFallback クラスから派生させて、最適な置換機構を実装することができます。You can derive from the EncoderFallback or DecoderFallback class to implement a best-fit replacement mechanism.

注意 (継承者)

このメソッドの呼び出しは GetEncoding(String) メソッドの実装を使用するため、オーバーライドする必要はありません。Because calls to this method use your implementation of the GetEncoding(String) method, you do not have to override it. ユーザーコードが GetEncoding(String, EncoderFallback, DecoderFallback) メソッドを呼び出すことによってエンコーディングを取得しようとすると、メソッドは、1つのが有効なエンコーディングを返すまで、すべての登録済みエンコードプロバイダーに codepage 識別子を渡します。When user code attempts to retrieve an encoding by calling the GetEncoding(String, EncoderFallback, DecoderFallback) method, the method passes the codepage identifier to every registered encoding provider until one returns a valid encoding. 有効なエンコーディングが返されない場合、GetEncoding(Int32) メソッドは、コードページ識別子が codepageであるキャッシュされたエンコーディングを取得しようとします。If none returns a valid encoding, the GetEncoding(Int32) method attempts to retrieve a cached encoding whose code page identifier is codepage. このため、GetEncoding(Int32, EncoderFallback, DecoderFallback) メソッドをオーバーライドすることを選択した場合、サポートされているエンコーディングのコードページ識別子で codepage ない場合、オーバーライドは null を返す必要があります。例外がスローされることはありません。Because of this, if you do choose to override the GetEncoding(Int32, EncoderFallback, DecoderFallback) method, your override should return null if codepage is not the code page identifier of an encoding that you support; it should never throw an exception.

注意 (呼び出し元)

このメソッドは、GetEncoding(String, EncoderFallback, DecoderFallback) メソッドによって呼び出されます。This method is called by the GetEncoding(String, EncoderFallback, DecoderFallback) method. ユーザーコードから直接呼び出すことはできません。You should not call it directly from user code.

こちらもご覧ください

適用対象