Encoding.RegisterProvider(EncodingProvider) Método

Definición

Registra un proveedor de codificación.

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

Subclase de EncodingProvider que proporciona acceso a codificaciones de caracteres adicionales.

Atributos

Excepciones

provider es null.

Comentarios

El RegisterProvider método permite registrar una clase derivada de EncodingProvider que hace que las codificaciones de caracteres estén disponibles en una plataforma que, de lo contrario, no las admite. Una vez registrado el proveedor de codificación, las codificaciones que admite se pueden recuperar llamando a cualquier Encoding.GetEncoding sobrecarga. Si hay varios proveedores de codificación, el Encoding.GetEncoding método intenta recuperar una codificación especificada de cada proveedor a partir de la que se registró más recientemente.

El registro de un proveedor de codificación mediante el RegisterProvider método también modifica el comportamiento de los métodos Encoding. GetEncoding (Int32) y EncodingProvider. GetEncoding (Int32, EncoderFallback, DecoderFallback) cuando se pasa un argumento de 0 :

  • Si el proveedor registrado es CodePagesEncodingProvider , el método devuelve la codificación que coincide con la página de códigos activa del sistema cuando se ejecuta en el sistema operativo Windows.

  • Un proveedor de codificación personalizado puede elegir la codificación que se devolverá cuando una de estas GetEncoding sobrecargas de método se pasa un argumento de 0 . El proveedor también puede elegir no devolver una codificación haciendo que el EncodingProvider.GetEncoding método devuelva null .

A partir de .NET Framework 4,6, .NET Framework incluye un proveedor de codificación, CodePagesEncodingProvider , que hace que las codificaciones estén disponibles en el .NET Framework completo pero no están disponibles en el plataforma universal de Windows. De forma predeterminada, la Plataforma universal de Windows solo admite las codificaciones Unicode, ASCII y la página de códigos 28591.

Si se usa el mismo proveedor de codificación en varias llamadas al RegisterProvider método, solo la primera llamada al método registra el proveedor. Las llamadas subsiguientes se omiten.

Si RegisterProvider se llama al método para registrar varios proveedores que controlan la misma codificación, el último proveedor registrado es el que se usa para todas las operaciones de codificación y descodificación. Se omiten los proveedores registrados previamente.

Se aplica a

Consulte también