Condividi tramite


Encoding.RegisterProvider(EncodingProvider) Metodo

Definizione

Registra un provider di codifica.

public:
 static void RegisterProvider(System::Text::EncodingProvider ^ provider);
[System.Security.SecurityCritical]
public static void RegisterProvider (System.Text.EncodingProvider provider);
public static void RegisterProvider (System.Text.EncodingProvider provider);
[<System.Security.SecurityCritical>]
static member RegisterProvider : System.Text.EncodingProvider -> unit
static member RegisterProvider : System.Text.EncodingProvider -> unit
Public Shared Sub RegisterProvider (provider As EncodingProvider)

Parametri

provider
EncodingProvider

Sottoclasse di EncodingProvider che fornisce l'accesso a codifiche caratteri aggiuntive.

Attributi

Eccezioni

provider è null.

Commenti

Il RegisterProvider metodo consente di registrare una classe derivata da EncodingProvider che rende disponibili codifiche di caratteri in una piattaforma che non le supporta altrimenti. Una volta registrato il provider di codifica, le codifiche supportate possono essere recuperate chiamando qualsiasi Encoding.GetEncoding Overload. Se sono presenti più provider di codifica, il Encoding.GetEncoding metodo tenta di recuperare una codifica specificata da ogni provider a partire da quello registrato più di recente.

La registrazione di un provider di codifica tramite il RegisterProvider metodo modifica anche il comportamento dei metodi Encoding. GetEncoding (Int32) e EncodingProvider. GetEncoding (Int32, EncoderFallback, DecoderFallback) quando viene passato un argomento di 0 :

  • Se il provider registrato è CodePagesEncodingProvider , il metodo restituisce la codifica che corrisponde alla tabella codici attiva del sistema durante l'esecuzione nel sistema operativo Windows.

  • Un provider di codifica personalizzato può scegliere la codifica da restituire quando uno di questi GetEncoding Overload del metodo viene passato a un argomento di 0 . Il provider può anche scegliere di non restituire una codifica perché il EncodingProvider.GetEncoding metodo restituisce null .

A partire da .NET Framework 4,6, .NET Framework include un provider di codifica, CodePagesEncodingProvider , che rende disponibili le codifiche presenti nel .NET Framework completo, ma non sono disponibili nel piattaforma UWP (Universal Windows Platform). Per impostazione predefinita, il piattaforma UWP (Universal Windows Platform) supporta solo le codifiche Unicode, ASCII e la tabella codici 28591.

Se lo stesso provider di codifica viene usato in più chiamate al RegisterProvider metodo, solo la prima chiamata al metodo registra il provider. Le chiamate successive verranno ignorate.

Se il RegisterProvider metodo viene chiamato per registrare più provider che gestiscono la stessa codifica, l'ultimo provider registrato è quello usato per tutte le operazioni di codifica e decodifica. Qualsiasi provider registrato in precedenza viene ignorato.

Si applica a

Vedi anche