AsciiToEbcdic (String function): Difference between revisions
mNo edit summary |
mNo edit summary |
||
Line 1: | Line 1: | ||
{{Template:String:AsciiToEbcdic subtitle}} | {{Template:String:AsciiToEbcdic subtitle}} | ||
<var>AsciiToEbcdic</var> is an <var>[[Intrinsic classes|intrinsic]]</var> function that converts an ASCII (ISO-8859-1) string to EBCDIC using the current | <var>AsciiToEbcdic</var> is an <var>[[Intrinsic classes|intrinsic]]</var> function that converts an ASCII (ISO-8859-1) string to EBCDIC using the current [[Unicode tables]]. Optionally, untranslatable characters are represented with character references. | ||
==Syntax== | ==Syntax== | ||
{{Template:String:AsciiToEbcdic syntax}} | {{Template:String:AsciiToEbcdic syntax}} | ||
===Syntax terms=== | ===Syntax terms=== | ||
<table class="syntaxTable"> | <table class="syntaxTable"> | ||
Line 12: | Line 13: | ||
<td>The input string, which is presumed to consist of ASCII characters.</td></tr> | <td>The input string, which is presumed to consist of ASCII characters.</td></tr> | ||
<tr><th><var>CharacterEncode</var></th> | <tr><th><var>CharacterEncode</var></th> | ||
<td>The optional, | <td>The optional, [[Methods#Named parameters|name required]], <var>CharacterEncode</var> argument is a <var>[[Boolean enumeration]]</var>. If its value is: | ||
<ul> | |||
<li><code>False</code>, the default, an exception is thrown if the input <var class="term">string</var> contains any ASCII character not translatable to EBCDIC. | |||
<li><code>True</code>, any ASCII character not translatable to EBCDIC is replaced with the XML style hexadecimal character reference of the character, and the ampersand character is replaced with <code>'&'</code>. | |||
<li>For instance, the six characters <code>&#x90;</code> replace the ASCII <i>"Device Control String"</i> character (X'90'). A similar example is shown below. | |||
</ul></td></tr> | |||
</table> | </table> | ||
Line 23: | Line 29: | ||
==Usage notes== | ==Usage notes== | ||
<ul><li>More information is available about the [[ | <ul><li>More information is available about the [[Unicode tables]]. | ||
<li>The <var>AsciiToEbcdic</var> function is available as of <var class="product">Sirius Mods</var> version 7.3.</ul> | <li>The <var>AsciiToEbcdic</var> function is available as of <var class="product">Sirius Mods</var> version 7.3.</ul> | ||
Revision as of 19:54, 7 August 2012
Convert ASCII string to EBCDIC (String class)
AsciiToEbcdic is an intrinsic function that converts an ASCII (ISO-8859-1) string to EBCDIC using the current Unicode tables. Optionally, untranslatable characters are represented with character references.
Syntax
%outString = string:AsciiToEbcdic[( [CharacterEncode= boolean])] Throws CharacterTranslationException
Syntax terms
%outString | A string variable to receive the method object string translated to EBCDIC. |
---|---|
string | The input string, which is presumed to consist of ASCII characters. |
CharacterEncode | The optional, name required, CharacterEncode argument is a Boolean enumeration. If its value is:
|
Exceptions
AsciiToEbcdic 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.
Usage notes
- More information is available about the Unicode tables.
- The AsciiToEbcdic function is available as of Sirius Mods version 7.3.
Examples
The following fragment shows calls of AsciiToEbcdic against strings with and without non-translatable characters.
%a string Len 20 %a = '31':X Print %a:AsciiToEbcdic %a = '318132':X Print %a:AsciiToEbcdic(CharacterEncode=True) Print %a:AsciiToEbcdic
The result is:
1 1&#x81;2 CANCELLING REQUEST: MSIR.0751: Class STRING, function ASCIITOEBCDIC: CHARACTER TRANSLATIONEXCEPTION exception: ASCII character X'81' without valid translation to EBCDIC at byte position 1 ...
See also
- The inverse of the AsciiToEbcdic method is EbcdicToAscii.