EncodingProvider Класс

Определение

Предоставляет базовый класс для поставщика кодировки, обеспечивающего кодировки, недоступные в определенной платформе.

public abstract class EncodingProvider
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class EncodingProvider
Наследование
EncodingProvider
Производный
Атрибуты

Комментарии

Поставщик кодирования предоставляет кодировки, недоступные в других случаях на определенной целевой платформе.

Платформа .NET Framework поддерживает большое количество кодировок символов и кодовых страниц. Полный список кодировок, доступных в платформа .NET Framework, можно получить, вызвав Encoding.GetEncodings метод . .NET Core, с другой стороны, по умолчанию поддерживает только следующие кодировки:

  • ASCII (кодовая страница 20127), возвращаемый свойством Encoding.ASCII .

  • ISO-8859-1 (кодовая страница 28591).

  • UTF-7 (кодовая страница 65000), возвращаемый свойством Encoding.UTF7 .

  • UTF-8 (кодовая страница 65001), возвращаемый свойством Encoding.UTF8 .

  • UTF-16 и UTF-16LE (кодовая страница 1200), возвращаемые свойством Unicode .

  • UTF-16BE (кодовая страница 1201), экземпляр которого создается путем вызова конструктора UnicodeEncoding.UnicodeEncoding(Boolean, Boolean) или со значением bigEndiantrue.UnicodeEncoding.UnicodeEncoding(Boolean, Boolean)

  • UTF-32 и UTF-32LE (кодовая страница 12000), возвращаемые свойством Encoding.UTF32 .

  • UTF-32BE (кодовая страница 12001), экземпляр которого создается путем вызова UTF32Encoding конструктора с параметром bigEndian и предоставления true значения в вызове метода .

Начиная с платформа .NET Framework 4.6, является базовым классом, EncodingProvider который делает в противном случае недоступные кодировки для платформа .NET Framework. Для этого необходимо выполнить следующие шаги.

  1. Определите подкласс , EncodingProvider который переопределяет две абстрактные GetEncoding перегрузки, GetEncoding(Int32) и GetEncoding(String). Эти перегрузки возвращают неподдерживаемую кодировку по идентификатору кодовой страницы и имени. Обратите внимание, что можно также вернуть кодировку по умолчанию, если GetEncoding(Int32) метод вызывается с аргументом 0.

  2. При необходимости можно переопределить виртуальные GetEncoding(Int32, EncoderFallback, DecoderFallback) методы и GetEncoding(String, EncoderFallback, DecoderFallback) . В большинстве случаев это необязательно, так как базовый класс предоставляет реализацию по умолчанию.

  3. Передайте EncodingProvider экземпляр в метод , Encoding.RegisterProvider чтобы сделать кодировки, предоставляемые EncodingProvider объектом, доступными для среды CLR.

  4. Вызовите перегрузку Encoding.GetEncoding , чтобы получить кодировку. Метод Encoding.GetEncoding вызовет соответствующий EncodingProvider.GetEncoding , чтобы определить, может ли он предоставить запрошенную кодировку.

Библиотека классов платформа .NET Framework предоставляет одно статическое свойство , которое возвращает EncodingProvider объект , CodePagesEncodingProvider.Instanceкоторый делает полный набор кодировок доступным в классической платформа .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)

Применяется к

Продукт Версии
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

См. также раздел