Reason (CharacterTranslationException property)
Enumerated cause of the exception (CharacterTranslationException class)
Syntax
%translationExceptionReason = characterTranslationException:Reason
Syntax terms
%reason | This TranslationExceptionReason enumeration value describes the reason for the translation failure. |
---|---|
characterTranslationException | A reference to an instance of a CharacterTranslationException object. |
Usage notes
- A TranslationExceptionReason enumeration may have one of the following values:
- InvalidEncoding
- An example of invalid encoding is UTF-16 string input to Utf16ToUnicode that contains bytes whose hexadecimal value is D800 (which is in the surrogates range).
- InvalidCharacterReference
- An XML-style hexadecimal character reference (for example,
™
for the trademark character) may validly represent a Unicode character to be translated. Any other string that begins with by an ampersand (&) — except the string&
— might cause an exception explained by an InvalidCharacterReference enumeration.For example, such an exception occurs if EbcdicToUnicode is called, the method argument is
CharacterDecode=True
, and the method input contains an ampersand followed by a space. - UntranslatableCharacter
- The following are examples of untranslatable characters (with the translation tables as delivered by Sirius):
- The EBCDIC input to the EbcdicToUnicode method contains a byte whose hexadecimal value is X'FF.
- The Unicode input to UnicodeToEbcdic contains one of the many Unicode characters that is not translated to an EBCDIC character (for example, U+20AC, the Euro currency symbol).
- As with all enumerations, you use the
ToString
method to convert an enumeration value to a character string whose value is the name of the enumeration value.