каковы условия и результаты (не) завершения Decoder.Convert - PullRequest
0 голосов
/ 18 февраля 2019

Стандартная библиотека .net содержит класс Decoder с методом Convert.

. Этот метод декодирует двоичные данные во входном массиве в символьные данные в выходном массиве.У него есть выходной параметр completed, указывающий, были ли использованы все переданные байты.

Этот метод документирован для выдачи ArgumentException, если

Выходной буфер слишком малсодержать любой из преобразованных входных данных.

Пока все хорошо, если в выходном буфере недостаточно места, completed - false, если в выходном буфере вообще нет свободного места., он выдает ArgumentException.

Однако в документации по исключениям говорится:

Выходной буфер должен быть больше или равен размеру, указанному в GetCharCountМетод.

, который меня смутил.Если выходной буфер должен быть больше или равен размеру метода GetCharCount, не должен ли выходной параметр completed всегда быть истинным?Если это так, что это использовать.Как (не) завершение сигнализируется точно?

...