Прочитать на английском

Поделиться через


Encoding.GetDecoder Метод

Определение

При переопределении в производном классе получает декодер, который преобразует последовательность байтов в последовательность символов.

public virtual System.Text.Decoder GetDecoder();

Возвращаемое значение

Объект Decoder, преобразующий закодированную последовательность байтов в последовательность символов.

Комментарии

Decoder.GetCharsМетод преобразует последовательные блоки байтов в последовательные блоки символов таким же образом, как и GetChars метод этого класса. Тем не менее, Decoder сохраняет сведения о состоянии между вызовами, чтобы правильно декодировать последовательности байтов, охватывающие блоки. DecoderТакже сохраняет конечные байты в конце блоков данных и использует конечные байты в следующей операции декодирования. Поэтому GetDecoder они и GetEncoder полезны для передачи по сети и операций с файлами, так как эти операции часто работают с блоками данных, а не с полным потоком данных.

Примечания для тех, кто наследует этот метод

Реализация по умолчанию возвращает объект Decoder , который GetCharCount(Byte[]) вызывает GetChars(Byte[]) методы и текущего объекта Encoding . Необходимо переопределить этот метод, чтобы он возвращал объект Decoder , сохраняющий его состояние между вызовами.

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

Продукт Версии
.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, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

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