다음을 통해 공유


Encoding.RegisterProvider(EncodingProvider) 메서드

정의

인코딩 공급자를 등록합니다.

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)

매개 변수

provider
EncodingProvider

추가 문자 인코딩에 대한 액세스를 제공하는 EncodingProvider의 하위 클래스입니다.

특성

예외

provider이(가) null인 경우

설명

RegisterProvider메서드를 사용 하면 EncodingProvider 문자 인코딩을 지원 하지 않는 플랫폼에서 사용할 수 있도록에서 파생 된 클래스를 등록할 수 있습니다. 인코딩 공급자를 등록 한 후에는 오버 로드를 호출 하 여 지원 되는 인코딩을 검색할 수 있습니다 Encoding.GetEncoding . 여러 인코딩 공급자가 있는 경우 메서드는 Encoding.GetEncoding 가장 최근에 등록 된 것으로 시작 하 여 각 공급자에서 지정 된 인코딩을 검색 하려고 시도 합니다.

메서드를 사용 하 여 인코딩 공급자를 등록 RegisterProvider 하면의 인수를 전달할 때 Encoding.getencoding (int32)자세한 내용은 encodingprovider (Int32, EncoderFallback, DecoderFallback) 메서드의 동작도 수정 0 됩니다.

  • 등록 된 공급자가 인 경우이 CodePagesEncodingProvider 메서드는 Windows 운영 체제에서 실행 될 때 시스템 활성 코드 페이지와 일치 하는 인코딩을 반환 합니다.

  • 사용자 지정 인코딩 공급자는 이러한 메서드 오버 로드 중 하나가의 인수를 전달할 때 반환할 인코딩을 선택할 수 있습니다 GetEncoding 0 . 공급자는 메서드가를 반환 하도록 하 여 인코딩을 반환 하지 않도록 선택할 수도 있습니다 EncodingProvider.GetEncoding null .

.NET Framework 4.6부터 .NET Framework에는 CodePagesEncodingProvider 전체 .NET Framework에 있지만 유니버설 Windows 플랫폼에서 사용할 수 없는 인코딩을 사용할 수 있도록 하는 하나의 인코딩 공급자가 포함 되어 있습니다. 기본적으로 유니버설 Windows 플랫폼는 유니코드 인코딩, ASCII 및 코드 페이지 28591만 지원 합니다.

메서드를 여러 번 호출할 때 동일한 인코딩 공급자를 사용 하는 경우 RegisterProvider 첫 번째 메서드 호출만 공급자를 등록 합니다. 후속 호출은 무시 됩니다.

RegisterProvider동일한 인코딩을 처리 하는 여러 공급자를 등록 하기 위해 메서드를 호출 하는 경우 마지막으로 등록 된 공급자는 모든 인코딩 및 디코딩 작업에 사용 됩니다. 이전에 등록 된 공급자는 모두 무시 됩니다.

적용 대상

추가 정보