EncodingProvider.GetEncoding Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает кодировку.
Перегрузки
GetEncoding(Int32) |
Возвращает кодировку, связанную с указанным идентификатором кодовой страницы. |
GetEncoding(String) |
Возвращает кодировку с указанным именем. |
GetEncoding(Int32, EncoderFallback, DecoderFallback) |
Возвращает кодировку, связанную с указанным идентификатором кодовой страницы. С помощью параметров задается обработчик ошибок для символов, которые не удается закодировать, и последовательностей байтов, которые не удается декодировать. |
GetEncoding(String, EncoderFallback, DecoderFallback) |
Возвращает кодировку, связанную с заданным именем. С помощью параметров задается обработчик ошибок для символов, которые не удается закодировать, и последовательностей байтов, которые не удается декодировать. |
GetEncoding(Int32)
- Исходный код:
- EncodingProvider.cs
- Исходный код:
- EncodingProvider.cs
- Исходный код:
- EncodingProvider.cs
Возвращает кодировку, связанную с указанным идентификатором кодовой страницы.
public:
abstract System::Text::Encoding ^ GetEncoding(int codepage);
public abstract System.Text.Encoding GetEncoding (int codepage);
public abstract System.Text.Encoding? GetEncoding (int codepage);
abstract member GetEncoding : int -> System.Text.Encoding
Public MustOverride Function GetEncoding (codepage As Integer) As Encoding
Параметры
- codepage
- Int32
Идентификатор кодовой страницы запрошенной кодировки.
Возвращаемое значение
Кодировка, связанная с указанной кодовой страницей, или null
, если этот поставщик EncodingProvider не может вернуть допустимую кодировку, соответствующую codepage
.
Комментарии
Примечания к вызывающим абонентам
Этот метод вызывается методом Encoding.GetEncoding(Int32). Не следует вызывать его непосредственно из пользовательского кода.
Примечания для тех, кто реализует этот метод
Вы переопределяете GetEncoding(Int32) метод , чтобы вернуть кодировку или кодировки, поддерживаемые вашим подклассом EncodingProvider . Когда пользовательский код пытается получить кодировку путем вызова GetEncoding(Int32) метода , метод передает codepage
идентификатор каждому зарегистрированным поставщику кодирования до тех пор, пока один не вернет допустимую кодировку. Если ни один из них не возвращает допустимую кодировку GetEncoding(Int32) , метод пытается получить кэшированную кодировку с идентификатором кодовой codepage
страницы . Поэтому, если codepage
не является идентификатором кодовой страницы поддерживаемой кодировки, метод должен возвращать null
; он никогда не должен вызывать исключение.
Примечания для тех, кто вызывает этот метод
Этот метод вызывается методом GetEncoding(Int32) . Не следует вызывать его непосредственно из пользовательского кода.
См. также раздел
Применяется к
GetEncoding(String)
- Исходный код:
- EncodingProvider.cs
- Исходный код:
- EncodingProvider.cs
- Исходный код:
- EncodingProvider.cs
Возвращает кодировку с указанным именем.
public:
abstract System::Text::Encoding ^ GetEncoding(System::String ^ name);
public abstract System.Text.Encoding GetEncoding (string name);
public abstract System.Text.Encoding? GetEncoding (string name);
abstract member GetEncoding : string -> System.Text.Encoding
Public MustOverride Function GetEncoding (name As String) As Encoding
Параметры
- name
- String
Имя запрошенной кодировки.
Возвращаемое значение
Кодировка, связанная с указанным именем, или null
, если этот поставщик EncodingProvider не может вернуть допустимую кодировку, соответствующую name
.
Комментарии
Примечания к наследутелям
Вы переопределяете метод GetEncoding(String), чтобы вернуть кодировку или кодировки, поддерживаемые вашим EncodingProvider подклассом. Когда пользовательский код пытается получить кодировку путем вызова метода GetEncoding(String), метод передает name
аргумент каждому зарегистрированным поставщику кодирования до тех пор, пока один не вернет допустимую кодировку. Если ни один из них не возвращает допустимую кодировку, метод GetEncoding(String) пытается получить кэшированную кодировку с именем name
. По этой причине, если name
не является именем поддерживаемой кодировки, метод должен возвращать null
. Единственным случаем, в котором метод должен вызывать исключение, является , если name
имеет значение null
.
Примечания к вызывающим абонентам
Этот метод вызывается методом Encoding.GetEncoding(String). Не следует вызывать его непосредственно из пользовательского кода.
Примечания для тех, кто реализует этот метод
Вы переопределяете GetEncoding(String) метод , чтобы вернуть кодировку или кодировки, поддерживаемые вашим подклассом EncodingProvider . Когда пользовательский код пытается получить кодировку путем вызова GetEncoding(String) метода , метод передает name
аргумент каждому зарегистрированным поставщику кодирования до тех пор, пока один не вернет допустимую кодировку. Если ни один из них не возвращает допустимую кодировку GetEncoding(String) , метод пытается получить кэшированную кодировку с именем name
. По этой причине, если name
не является именем поддерживаемой кодировки, метод должен возвращать null
. Единственным случаем, в котором метод должен вызывать исключение, является , если name
имеет значение null
.
Примечания для тех, кто вызывает этот метод
Этот метод вызывается методом GetEncoding(String) . Не следует вызывать его непосредственно из пользовательского кода.
См. также раздел
Применяется к
GetEncoding(Int32, EncoderFallback, DecoderFallback)
- Исходный код:
- EncodingProvider.cs
- Исходный код:
- EncodingProvider.cs
- Исходный код:
- EncodingProvider.cs
Возвращает кодировку, связанную с указанным идентификатором кодовой страницы. С помощью параметров задается обработчик ошибок для символов, которые не удается закодировать, и последовательностей байтов, которые не удается декодировать.
public:
virtual System::Text::Encoding ^ GetEncoding(int codepage, System::Text::EncoderFallback ^ encoderFallback, System::Text::DecoderFallback ^ decoderFallback);
public virtual System.Text.Encoding GetEncoding (int codepage, System.Text.EncoderFallback encoderFallback, System.Text.DecoderFallback decoderFallback);
public virtual System.Text.Encoding? GetEncoding (int codepage, System.Text.EncoderFallback encoderFallback, System.Text.DecoderFallback decoderFallback);
abstract member GetEncoding : int * System.Text.EncoderFallback * System.Text.DecoderFallback -> System.Text.Encoding
override this.GetEncoding : int * System.Text.EncoderFallback * System.Text.DecoderFallback -> System.Text.Encoding
Public Overridable Function GetEncoding (codepage As Integer, encoderFallback As EncoderFallback, decoderFallback As DecoderFallback) As Encoding
Параметры
- codepage
- Int32
Идентификатор кодовой страницы запрошенной кодировки.
- encoderFallback
- EncoderFallback
Объект, предоставляющий процедуру обработки ошибок, когда символ не может быть закодирован с использованием этой кодировки.
- decoderFallback
- DecoderFallback
Объект, предоставляющий процедуру обработки ошибок, когда последовательность байтов не может быть декодирована с использованием этой кодировки.
Возвращаемое значение
Кодировка, связанная с указанной кодовой страницей, или null
, если этот поставщик EncodingProvider не может вернуть допустимую кодировку, соответствующую codepage
.
Комментарии
encoderFallback
Параметры и decoderFallback
— это объекты, которые определяют стратегию отката, используемую в случае, если кодировщик не может преобразовать символ в последовательность байтов или декодер не может преобразовать последовательность байтов в символ. Платформа .NET Framework предоставляет следующие резервные механизмы:
Резервный вариант исключения.
encoderFallback
Если аргумент является экземпляром EncoderExceptionFallback, илиdecoderExceptionFallback
аргумент является экземпляром DecoderExceptionFallback, метод кодирования создает исключение, если символы не могут быть закодированы, а метод декодирования создает исключение, если последовательность байтов не может быть декодирована.Резервный вариант замены.
encoderFallback
Если аргумент является экземпляром EncoderReplacementFallback, илиdecoderExceptionFallback
аргумент является экземпляром DecoderReplacementFallback, методы кодирования и декодирования заменяют строку замены для символов, которые не могут быть закодированы, а последовательности байтов не могут быть декодированы. Если вы создаете экземпляр резервного объекта замены путем вызова конструктора без параметров, символ замены — "?". При вызове конструктора EncoderReplacementFallback.EncoderReplacementFallback(String) или DecoderReplacementFallback.DecoderReplacementFallback(String) можно указать строку замены.Оптимальный резервный вариант. Вы можете наследовать EncoderFallback от класса или DecoderFallback для реализации оптимально подходящего механизма замены.
Примечания для тех, кто наследует этот метод
Так как вызовы этого метода используют реализацию GetEncoding(Int32) метода , переопределять его не нужно. Когда пользовательский код пытается получить кодировку путем вызова GetEncoding(Int32, EncoderFallback, DecoderFallback) метода , метод передает codepage
идентификатор каждому зарегистрированным поставщику кодирования до тех пор, пока один не вернет допустимую кодировку. Если ни один из них не возвращает допустимую кодировку GetEncoding(Int32) , метод пытается получить кэшированную кодировку с идентификатором кодовой codepage
страницы . Поэтому, если вы решите GetEncoding(Int32, EncoderFallback, DecoderFallback) переопределить метод, переопределение должно возвращать null
значение , если codepage
не является идентификатором кодовой страницы поддерживаемой кодировки; оно никогда не должно вызывать исключение.
Примечания для тех, кто вызывает этот метод
Этот метод вызывается методом GetEncoding(Int32, EncoderFallback, DecoderFallback) . Не следует вызывать его непосредственно из пользовательского кода.
См. также раздел
Применяется к
GetEncoding(String, EncoderFallback, DecoderFallback)
- Исходный код:
- EncodingProvider.cs
- Исходный код:
- EncodingProvider.cs
- Исходный код:
- EncodingProvider.cs
Возвращает кодировку, связанную с заданным именем. С помощью параметров задается обработчик ошибок для символов, которые не удается закодировать, и последовательностей байтов, которые не удается декодировать.
public:
virtual System::Text::Encoding ^ GetEncoding(System::String ^ name, System::Text::EncoderFallback ^ encoderFallback, System::Text::DecoderFallback ^ decoderFallback);
public virtual System.Text.Encoding GetEncoding (string name, System.Text.EncoderFallback encoderFallback, System.Text.DecoderFallback decoderFallback);
public virtual System.Text.Encoding? GetEncoding (string name, System.Text.EncoderFallback encoderFallback, System.Text.DecoderFallback decoderFallback);
abstract member GetEncoding : string * System.Text.EncoderFallback * System.Text.DecoderFallback -> System.Text.Encoding
override this.GetEncoding : string * System.Text.EncoderFallback * System.Text.DecoderFallback -> System.Text.Encoding
Public Overridable Function GetEncoding (name As String, encoderFallback As EncoderFallback, decoderFallback As DecoderFallback) As Encoding
Параметры
- name
- String
Имя предпочтительной кодировки.
- encoderFallback
- EncoderFallback
Объект, предоставляющий процедуру обработки ошибок, когда символ не может быть закодирован с использованием этой кодировки.
- decoderFallback
- DecoderFallback
Объект, предоставляющий процедуру обработки ошибок, когда последовательность байтов не может быть декодирована с использованием текущей кодировки.
Возвращаемое значение
Кодировка, связанная с указанным именем, или null
, если этот поставщик EncodingProvider не может вернуть допустимую кодировку, соответствующую name
.
Комментарии
encoderFallback
Параметры и decoderFallback
— это объекты, которые определяют стратегию отката, используемую в случае, если кодировщик не может преобразовать символ в последовательность байтов или декодер не может преобразовать последовательность байтов в символ. Платформа .NET Framework предоставляет следующие резервные механизмы:
Резервный вариант исключения.
encoderFallback
Если аргумент является экземпляром EncoderExceptionFallback, илиdecoderExceptionFallback
аргумент является экземпляром DecoderExceptionFallback, метод кодирования создает исключение, если символы не могут быть закодированы, а метод декодирования создает исключение, если последовательность байтов не может быть декодирована.Резервный вариант замены.
encoderFallback
Если аргумент является экземпляром EncoderReplacementFallback, илиdecoderExceptionFallback
аргумент является экземпляром DecoderReplacementFallback, методы кодирования и декодирования заменяют строку замены для символов, которые не могут быть закодированы, а последовательности байтов не могут быть декодированы. Если вы создаете экземпляр резервного объекта замены путем вызова конструктора без параметров, символ замены — "?". При вызове конструктора EncoderReplacementFallback.EncoderReplacementFallback(String) или DecoderReplacementFallback.DecoderReplacementFallback(String) можно указать строку замены.Оптимальный резервный вариант. Вы можете наследовать EncoderFallback от класса или DecoderFallback для реализации оптимально подходящего механизма замены.
Примечания для тех, кто наследует этот метод
Так как вызовы этого метода используют реализацию GetEncoding(String) метода , переопределять его не нужно. Когда пользовательский код пытается получить кодировку путем вызова GetEncoding(String, EncoderFallback, DecoderFallback) метода , метод передает codepage
идентификатор каждому зарегистрированным поставщику кодирования до тех пор, пока один не вернет допустимую кодировку. Если ни один из них не возвращает допустимую кодировку GetEncoding(Int32) , метод пытается получить кэшированную кодировку с идентификатором кодовой codepage
страницы . Поэтому, если вы решите GetEncoding(Int32, EncoderFallback, DecoderFallback) переопределить метод, переопределение должно возвращать null
значение , если codepage
не является идентификатором кодовой страницы поддерживаемой кодировки; оно никогда не должно вызывать исключение.
Примечания для тех, кто вызывает этот метод
Этот метод вызывается методом GetEncoding(String, EncoderFallback, DecoderFallback) . Не следует вызывать его непосредственно из пользовательского кода.