AsciiToEbcdic (String function): Difference between revisions
mNo edit summary |
m (→Examples) |
||
(13 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
{{Template:String:AsciiToEbcdic subtitle}} | {{Template:String:AsciiToEbcdic subtitle}} | ||
<var>AsciiToEbcdic</var> is an | <var>AsciiToEbcdic</var> is an [[Intrinsic classes|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== | ==Syntax== | ||
{{Template:String:AsciiToEbcdic syntax}} | {{Template:String:AsciiToEbcdic syntax}} | ||
===Syntax terms=== | ===Syntax terms=== | ||
<table class="syntaxTable"> | <table class="syntaxTable"> | ||
<tr><th>%outString</th> | <tr><th>%outString</th> | ||
<td>A string variable to receive the method object <var class="term">string</var> translated to EBCDIC.</td></tr> | <td>A string variable to receive the method object <var class="term">string</var> translated to EBCDIC.</td></tr> | ||
<tr><th>string</th> | <tr><th>string</th> | ||
<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, [[Notation conventions for methods#Named parameters|name required]], <var>CharacterEncode</var> argument is a <var>[[Boolean enumeration]]</var>. If its value is: | ||
<ul> | |||
<li><var>False</var>, the default, an exception is thrown if the input <var class="term">string</var> contains any ASCII character not translatable to EBCDIC. | |||
<li><var>True</var>, 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>'&amp;'</code>. | |||
<li>For instance, the six characters <code>&#x90;</code> replace the ASCII "Device Control String" character (X'90'). A similar example is shown below. | |||
</ul> | |||
</td></tr> | |||
</table> | </table> | ||
Line 23: | Line 34: | ||
==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> | ||
Line 38: | Line 49: | ||
The result is: | The result is: | ||
<p class="output">1 | <p class="output">1 | ||
1& | 1&#x81;2 | ||
CANCELLING REQUEST: MSIR.0751: Class STRING, function ASCIITOEBCDIC: | CANCELLING REQUEST: MSIR.0751: Class STRING, function ASCIITOEBCDIC: CHARACTERTRANSLATIONEXCEPTION exception: ASCII character X'81' without valid translation to EBCDIC at byte position 1 ... | ||
</p> | </p> | ||
Latest revision as of 20:46, 15 February 2014
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2 CANCELLING REQUEST: MSIR.0751: Class STRING, function ASCIITOEBCDIC: CHARACTERTRANSLATIONEXCEPTION exception: ASCII character X'81' without valid translation to EBCDIC at byte position 1 ...
See also
- The inverse of the AsciiToEbcdic method is EbcdicToAscii.