EncodingProvider 類別

定義

提供編碼提供者的基底類別,這個提供者提供特定平台無法使用的編碼方式。

public ref class EncodingProvider abstract
public abstract class EncodingProvider
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class EncodingProvider
type EncodingProvider = class
[<System.Runtime.InteropServices.ComVisible(true)>]
type EncodingProvider = class
Public MustInherit Class EncodingProvider
繼承
EncodingProvider
衍生
屬性

備註

編碼提供者提供在特定目標平臺上無法使用的編碼。

.NET Framework支援大量的字元編碼和字碼頁。 您可以藉由呼叫 Encoding.GetEncodings 方法,取得.NET Framework中可用的編碼完整清單。 另一方面,根據預設,.NET Core 僅支援下列編碼:

從 .NET Framework 4.6 開始,是基類, EncodingProvider 讓.NET Framework無法使用編碼。 請執行下列步驟:

  1. 定義 的 EncodingProvider 子類別,這個子類別會覆寫兩個抽象 GetEncoding 多載和 GetEncoding(Int32)GetEncoding(String) 。 這些多載會依字碼頁識別碼和名稱傳回其他不支援的編碼方式。 請注意,如果呼叫方法的引數為 0, GetEncoding(Int32) 您也可以選擇傳回預設編碼。

  2. 您可以選擇性地覆寫虛擬 GetEncoding(Int32, EncoderFallback, DecoderFallback)GetEncoding(String, EncoderFallback, DecoderFallback) 方法。 在大部分情況下,這並非必要專案,因為基類會提供預設實作。

  3. EncodingProvider 實例傳遞至 Encoding.RegisterProvider 方法,讓 物件提供的 EncodingProvider 編碼可供 Common Language Runtime 使用。

  4. Encoding.GetEncoding呼叫多載以擷取編碼。 方法 Encoding.GetEncoding 會呼叫對應的 EncodingProvider.GetEncoding ,以判斷它是否可以提供要求的編碼方式。

.NET Framework類別庫提供一個靜態屬性,這個屬性 CodePagesEncodingProvider.Instance 會傳回 EncodingProvider 物件,讓桌面.NET Framework類別庫上提供 .NET Core 應用程式的完整編碼。 此外,您可以衍生自 類別, EncodingProvider 讓自己的編碼可供使用。

建構函式

EncodingProvider()

初始化 EncodingProvider 類別的新執行個體。

方法

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
GetEncoding(Int32)

傳回與指定字碼頁識別項相關聯的編碼方式。

GetEncoding(Int32, EncoderFallback, DecoderFallback)

傳回與指定字碼頁識別項相關聯的編碼方式。 參數會針對無法編碼的字元以及無法解碼的位元組序列指定錯誤處理常式。

GetEncoding(String)

傳回具有指定名稱的編碼方式。

GetEncoding(String, EncoderFallback, DecoderFallback)

傳回與指定名稱建立關聯的編碼方式。 參數會針對無法編碼的字元以及無法解碼的位元組序列指定錯誤處理常式。

GetEncodings()

傳回陣列,其中包含 EncodingProvider 支援的所有編碼。

GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
ToString()

傳回代表目前物件的字串。

(繼承來源 Object)

適用於

另請參閱