UnicodeToEbcdic (Unicode function): Difference between revisions
mNo edit summary |
mNo edit summary |
||
Line 1: | Line 1: | ||
{{Template:Unicode:UnicodeToEbcdic subtitle}} | {{Template:Unicode:UnicodeToEbcdic subtitle}} | ||
<var>UnicodeToEbcdic</var> converts a <var>Unicode</var> string to EBCDIC. Optionally, untranslatable characters can be represented with XML style hexadecimal character references. | |||
untranslatable characters can be represented with XML style hexadecimal | |||
character references. | |||
==Syntax== | ==Syntax== | ||
{{Template:Unicode:UnicodeToEbcdic syntax}} | {{Template:Unicode:UnicodeToEbcdic syntax}} | ||
===Syntax terms=== | ===Syntax terms=== | ||
<table class="syntaxTable"> | <table class="syntaxTable"> | ||
<tr><th>% | <tr><th>%string</th> | ||
<td>A string variable to receive the method object string translated to EBCDIC. </td></tr> | <td>A string variable to receive the method object string translated to EBCDIC.</td></tr> | ||
<tr><th>unicode</th> | <tr><th>unicode</th> | ||
<td>A <var>Unicode</var> string. </td></tr> | <td>A <var>Unicode</var> string. </td></tr> | ||
<tr><th>CharacterEncode | <tr><th>CharacterEncode</th> | ||
<td>The optional ( | <td>The optional (<var>[[Methods#Named parameters|Name-Required]]</var>) <var class="term">CharacterEncode</var> argument is a Boolean: <ul><li>If its value is <code>False</code>, the default, an exception is thrown if the input contains any <var>Unicode</var> character not translatable to EBCDIC. <li>If its value is <Code>True</code>, any <var>Unicode</var> character not translatable to EBCDIC is replaced with the hexadecimal character reference of the character, and the ampersand character is replaced with <code>&amp;</code>. | ||
For example, the eight characters < | For example, the eight characters <code>&#x201C;</code> replace the Unicode "left double-quotation mark." </ul></td></tr> | ||
</table> | </table> | ||
===Exceptions=== | ===Exceptions=== | ||
This function can throw the following exception: | This function can throw the following exception: | ||
<dl> | <dl> | ||
Line 29: | Line 24: | ||
See [[CharacterTranslationException exception class]]. | See [[CharacterTranslationException exception class]]. | ||
</dl> | </dl> | ||
==Usage notes== | ==Usage notes== | ||
<ul> | <ul> | ||
Line 38: | Line 34: | ||
<li>The [[EbcdicToUnicode (String function)|EbcdicToUnicode]] method | <li>The [[EbcdicToUnicode (String function)|EbcdicToUnicode]] method | ||
converts an EBCDIC string to <var>Unicode</var>. | converts an EBCDIC string to <var>Unicode</var>. | ||
<li>The <var>UnicodeToEbcdic</var> function is available as of version 7.3 of the <var class=product>Sirius Mods</var>. | |||
</ul> | </ul> | ||
Revision as of 05:01, 25 February 2011
Translate to Ebcdic (Unicode class)
UnicodeToEbcdic converts a Unicode string to EBCDIC. Optionally, untranslatable characters can be represented with XML style hexadecimal character references.
Syntax
%string = unicode:UnicodeToEbcdic[( [CharacterEncode= boolean])] Throws CharacterTranslationException
Syntax terms
%string | A string variable to receive the method object string translated to EBCDIC. |
---|---|
unicode | A Unicode string. |
CharacterEncode | The optional (Name-Required) CharacterEncode argument is a Boolean:
|
Exceptions
This function can throw the following exception:
- CharacterTranslationException
- If the method encounters a translation problem, properties of the exception object may indicate the location and type of problem. See CharacterTranslationException exception class.
Usage notes
- Unless the CharacterEncode argument is used, or you want to Catch a CharacterTranslationException, this function is generally not needed, because a Unicode string is implicitly converted to EBCDIC when used in an EBCDIC context. See the example in "Examples," below.
- The EbcdicToUnicode method converts an EBCDIC string to Unicode.
- The UnicodeToEbcdic function is available as of version 7.3 of the Sirius Mods.
Examples
The following example shows multiple calls of UnicodeToEbcdic. The U constant function is used in the example.
%u Unicode Initial('1':U) Print %u:UnicodeToEbcdic %u = '1€2':U Print %u:UnicodeToEbcdic(CharacterEncode=True) Print %u:UnicodeToEbcdic
The result of the above fragment is:
1 1€2 CANCELLING REQUEST: MSIR.0751: Class STRING, function UNICODETOEBCDIC: CHARACTER TRANSLATIONEXCEPTION exception: Unicode character U+0080 without valid translation to EBCDIC at byte position 5 ...
Note:
Because of the implicit conversion of Unicode strings (in this case to String),
the Print %u:UnicodeToEbcdic statements in the example above could be
replaced by Print %u statements and the results would be the same.