EncodingProvider.GetEncoding 方法

定義

回傳一個編碼。

多載

名稱 Description
GetEncoding(Int32)

回傳與指定代碼頁識別碼相關的編碼。

GetEncoding(String)

回傳指定名稱的編碼。

GetEncoding(Int32, EncoderFallback, DecoderFallback)

回傳與指定代碼頁識別碼相關的編碼。 參數指定無法編碼字元及無法解碼的位元組序列的錯誤處理程序。

GetEncoding(String, EncoderFallback, DecoderFallback)

回傳與指定名稱相關的編碼。 參數指定無法編碼字元及無法解碼的位元組序列的錯誤處理程序。

GetEncoding(Int32)

回傳與指定代碼頁識別碼相關的編碼。

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

請求編碼的代碼頁識別碼。

傳回

與指定代碼頁相關的編碼,若 null 無法 EncodingProvider 回傳對應的 codepage有效編碼,則為 。

備註

呼叫者注意事項

此方法稱為 Encoding.GetEncoding(Int32) 方法。 你不應該直接從使用者程式碼呼叫它。

給實施者的注意事項

你覆寫 GetEncoding(Int32) 方法,回傳子類別支援 EncodingProvider 的編碼。 當使用者程式碼嘗試透過呼叫 GetEncoding(Int32) 該方法來取得編碼時,該方法會將識別碼傳遞 codepage 給所有註冊的編碼提供者,直到有一方回傳有效的編碼為止。 若無有效編碼回傳, GetEncoding(Int32) 方法嘗試取得代碼頁識別碼為 codepage的快取編碼。 因此,如果 codepage 不是你支援的編碼的代碼頁識別碼,該方法應該回傳 null;它絕不應拋出例外。

給呼叫者的注意事項

此方法由 稱為 。GetEncoding(Int32) 你不應該直接從使用者程式碼呼叫它。

另請參閱

適用於

GetEncoding(String)

回傳指定名稱的編碼。

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

請求的編碼名稱。

傳回

與指定名稱相關的編碼,或 null 若無法 EncodingProvider 回傳對應的 name有效編碼,則為 。

備註

繼承者備註

你要覆寫 GetEncoding(String) 方法,回傳你 EncodingProvider 子類支援的編碼。 當使用者程式碼嘗試呼叫 GetEncoding(String) 方法來取得編碼時,該方法會將參數傳給 name 所有註冊的編碼提供者,直到有一方回傳有效的編碼為止。 若無有效編碼回傳, GetEncoding(String) 方法嘗試擷取名為 name的快取編碼。 因此,如果 name 不是你支援的編碼名稱,該方法應該回傳 null。 該方法唯一應該拋出例外的情況是 name 是 。null

呼叫者注意事項

此方法稱為 Encoding.GetEncoding(String) 方法。 你不應該直接從使用者程式碼呼叫它。

給實施者的注意事項

你覆寫 GetEncoding(String) 方法,回傳子類別支援 EncodingProvider 的編碼。 當使用者程式碼嘗試呼叫 GetEncoding(String) 該方法來取得編碼時,該方法會將參數傳給 name 所有註冊的編碼提供者,直到有一方回傳有效的編碼為止。 若無有效編碼回傳, GetEncoding(String) 方法嘗試取取名為 name的快取編碼。 因此,如果 name 不是你支援的編碼名稱,該方法應該回傳 null。 該方法唯一應該拋出例外的情況是 name 是 。null

給呼叫者的注意事項

此方法由 稱為 。GetEncoding(String) 你不應該直接從使用者程式碼呼叫它。

另請參閱

適用於

GetEncoding(Int32, EncoderFallback, DecoderFallback)

回傳與指定代碼頁識別碼相關的編碼。 參數指定無法編碼字元及無法解碼的位元組序列的錯誤處理程序。

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
Public Overridable Function GetEncoding (codepage As Integer, encoderFallback As EncoderFallback, decoderFallback As DecoderFallback) As Encoding

參數

codepage
Int32

請求編碼的代碼頁識別碼。

encoderFallback
EncoderFallback

當字元無法以此編碼方式編碼時,提供錯誤處理程序的物件。

decoderFallback
DecoderFallback

當位元組序列無法用此編碼解碼時,提供錯誤處理程序的物件。

傳回

與指定代碼頁相關的編碼,若 null 無法 EncodingProvider 回傳對應的 codepage有效編碼,則為 。

備註

encoderFallbackdecoderFallback參數是定義在編碼器無法將字元轉換為位元組序列,或解碼器無法將位元組序列轉換為字元時,所採用的備援策略的物件。 .NET Framework 提供以下備援機制:

給繼承者的注意事項

由於呼叫此方法使用你對該 GetEncoding(Int32) 方法的實作,因此不必覆蓋它。 當使用者程式碼嘗試透過呼叫 GetEncoding(Int32, EncoderFallback, DecoderFallback) 該方法來取得編碼時,該方法會將識別碼傳遞 codepage 給所有註冊的編碼提供者,直到有一方回傳有效的編碼為止。 若無有效編碼回傳, GetEncoding(Int32) 方法嘗試取得代碼頁識別碼為 codepage的快取編碼。 因此,如果你選擇覆寫該GetEncoding(Int32, EncoderFallback, DecoderFallback)方法,若codepage不是你支援的編碼的代碼頁識別碼,則你的覆寫應該會回傳null;它絕不應拋出例外。

給呼叫者的注意事項

此方法由 稱為 。GetEncoding(Int32, EncoderFallback, DecoderFallback) 你不應該直接從使用者程式碼呼叫它。

另請參閱

適用於

GetEncoding(String, EncoderFallback, DecoderFallback)

回傳與指定名稱相關的編碼。 參數指定無法編碼字元及無法解碼的位元組序列的錯誤處理程序。

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
Public Overridable Function GetEncoding (name As String, encoderFallback As EncoderFallback, decoderFallback As DecoderFallback) As Encoding

參數

name
String

偏好編碼的名稱。

encoderFallback
EncoderFallback

當字元無法以此編碼方式編碼時,提供錯誤處理程序的物件。

decoderFallback
DecoderFallback

當位元組序列無法用目前編碼解碼時,提供錯誤處理程序的物件。

傳回

與指定名稱相關的編碼,或 null 若無法 EncodingProvider 回傳對應的 name有效編碼,則為 。

備註

encoderFallbackdecoderFallback參數是定義在編碼器無法將字元轉換為位元組序列,或解碼器無法將位元組序列轉換為字元時,所採用的備援策略的物件。 .NET 提供以下備援機制:

給呼叫者的注意事項

此方法由 稱為 。GetEncoding(String, EncoderFallback, DecoderFallback) 你不應該直接從使用者程式碼呼叫它。

另請參閱

適用於