UnicodeToEbcdic (Unicode function): Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (1 revision)
m (1 revision)
Line 2: Line 2:
[[Category:Unicode methods|UnicodeToEbcdic function]]
[[Category:Unicode methods|UnicodeToEbcdic function]]
[[Category:Intrinsic methods]]
[[Category:Intrinsic methods]]
<!--DPL?? Category:Unicode methods|UnicodeToEbcdic function: String converted from Unicode to EBCDIC-->
<!--DPL?? Category:Unicode methods|<var>UnicodeToEbcdic</var> function: String converted from Unicode to EBCDIC-->
<!--DPL?? Category:Intrinsic methods|UnicodeToEbcdic (Unicode function): String converted from Unicode to EBCDIC-->
<!--DPL?? Category:Intrinsic methods|<var>UnicodeToEbcdic</var> (Unicode function): String converted from Unicode to EBCDIC-->
<!--DPL?? Category:System methods|UnicodeToEbcdic (Unicode function): String converted from Unicode to EBCDIC-->
<!--DPL?? Category:System methods|<var>UnicodeToEbcdic</var> (Unicode function): String converted from Unicode to EBCDIC-->


This function converts a Unicode string to EBCDIC.
This function converts a Unicode string to EBCDIC.
Line 11: Line 11:
character references.
character references.


The UnicodeToEbcdic function is available as of version 7.3 of the <var class=product>Sirius Mods</var>.
The <var>UnicodeToEbcdic</var> function is available as of version 7.3 of the <var class=product>Sirius Mods</var>.
==Syntax==
==Syntax==
{{Template:Unicode:UnicodeToEbcdic syntax}}
{{Template:Unicode:UnicodeToEbcdic syntax}}
Line 46: Line 46:
==Examples==
==Examples==


The following example shows multiple calls of UnicodeToEbcdic.
The following example shows multiple calls of <var>UnicodeToEbcdic</var>.
The [[U (String function)|U constant function]] is used in the example.
The [[U (String function)|U constant function]] is used in the example.
<pre>
<pre>
     %u Unicode Initial('&amp;#x31;':U)
     %u Unicode Initial('&amp;#x31;':U)
     Print %u:UnicodeToEbcdic
     Print %u:<var>UnicodeToEbcdic</var>


     %u = '1&amp;#x80;2':U
     %u = '1&amp;#x80;2':U
     Print %u:UnicodeToEbcdic(CharacterEncode=True)
     Print %u:<var>UnicodeToEbcdic</var>(CharacterEncode=True)
     Print %u:UnicodeToEbcdic
     Print %u:<var>UnicodeToEbcdic</var>
</pre>
</pre>
The result of the above fragment is:
The result of the above fragment is:
Line 68: Line 68:
Because of the implicit conversion of Unicode strings (in this case to String),
Because of the implicit conversion of Unicode strings (in this case to String),
<br>
<br>
the <tt>Print %u:UnicodeToEbcdic</tt>  statements in the example above could be
the <tt>Print %u:<var>UnicodeToEbcdic</var></tt>  statements in the example above could be
<br>
<br>
replaced by <tt>Print %u</tt>  statements and the results would be the same.
replaced by <tt>Print %u</tt>  statements and the results would be the same.

Revision as of 15:32, 19 January 2011

Translate to Ebcdic (Unicode class)

This function converts a Unicode string to EBCDIC. As an option, untranslatable characters can be represented with XML style hexadecimal character references.

The UnicodeToEbcdic function is available as of version 7.3 of the Sirius Mods.

Syntax

%string = unicode:UnicodeToEbcdic[( [CharacterEncode= boolean])] Throws CharacterTranslationException

Syntax terms

%ebcdic A string variable to receive the method object string translated to EBCDIC.
unicode A Unicode string.
CharacterEncode=bool The optional (name required) CharacterEncode argument is a Boolean:
  • If its value is False, the default, an exception is thrown if the input contains any Unicode character not translatable to EBCDIC.
  • If its value is True, any Unicode character not translatable to EBCDIC is replaced with the hexadecimal character reference of the character, and the ampersand character is replaced with &amp;. For example, the eight characters &#x201C; replace the Unicode "left double-quotation mark."

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.

Examples

The following example shows multiple calls of UnicodeToEbcdic. The U constant function is used in the example.

    %u Unicode Initial('&#x31;':U)
    Print %u:<var>UnicodeToEbcdic</var>

    %u = '1&#x80;2':U
    Print %u:<var>UnicodeToEbcdic</var>(CharacterEncode=True)
    Print %u:<var>UnicodeToEbcdic</var>

The result of the above fragment is:

    1
    1&#x0080;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.