Compartilhar via


Encoding.RegisterProvider(EncodingProvider) Método

Definição

Registra um provedor de codificação.

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)

Parâmetros

provider
EncodingProvider

Uma subclasse de EncodingProvider que fornece acesso a codificações de caracteres adicionais.

Atributos

Exceções

provider é null.

Comentários

O RegisterProvider método permite que você registre uma classe derivada do EncodingProvider que torna as codificações de caracteres disponíveis em uma plataforma que, de outra forma, não dão suporte a elas. Depois que o provedor de codificação é registrado, as codificações que ele dá suporte podem ser recuperadas chamando qualquer Encoding.GetEncoding sobrecarga. Se houver vários provedores de codificação, o Encoding.GetEncoding método tentará recuperar uma codificação especificada de cada provedor, começando com a que foi registrada mais recentemente.

O registro de um provedor de codificação usando o RegisterProvider método também modifica o comportamento dos métodos Encoding. GetEncoding (Int32) e encodingprovider. GetEncoding (Int32, EncoderFallback, DecoderFallback) quando passado um argumento de 0 :

  • Se o provedor registrado for o CodePagesEncodingProvider , o método retornará a codificação que corresponde à página de código ativa do sistema durante a execução no sistema operacional Windows.

  • Um provedor de codificação personalizado pode escolher qual codificação retornar quando qualquer uma dessas GetEncoding sobrecargas de método recebe um argumento de 0 . O provedor também pode optar por não retornar uma codificação fazendo com que o EncodingProvider.GetEncoding método seja retornado null .

A partir do .NET Framework 4,6, .NET Framework inclui um provedor de codificação, CodePagesEncodingProvider , que disponibiliza as codificações que estão presentes no .NET Framework completo, mas que não estão disponíveis no plataforma universal do Windows. Por padrão, a Plataforma Universal do Windows só dá suporte a codificações Unicode, ASCII e página de código 28591.

Se o mesmo provedor de codificação for usado em várias chamadas para o RegisterProvider método, somente a primeira chamada de método registrará o provedor. As chamadas subsequentes são ignoradas.

Se o RegisterProvider método for chamado para registrar vários provedores que manipulam a mesma codificação, o último provedor registrado será usado para todas as operações de codificação e decodificação. Todos os provedores registrados anteriormente são ignorados.

Aplica-se a

Confira também