EbcdicToAscii (String function): Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (1 revision)
m (1 revision)
Line 27: Line 27:
==Usage notes==
==Usage notes==
*You can find the list of XHTML entities on the Internet at the following URL:
*You can find the list of XHTML entities on the Internet at the following URL:
    http://www.w3.org/TR/xhtml1/dtds.html#h-A2
<p class="code">http://www.w3.org/TR/xhtml1/dtds.html#h-A2
</p>
*There is more information about the [[Unicode tables]].
*There is more information about the [[Unicode tables]].
*The inverse of the <var>EbcdicToAscii</var> method is [[AsciiToEbcdic (String function)|AsciiToEbcdic]].
*The inverse of the <var>EbcdicToAscii</var> method is [[AsciiToEbcdic (String function)|AsciiToEbcdic]].
Line 34: Line 35:
The following fragment shows calls of <var>EbcdicToAscii</var> against a variety of EBCDIC characters.
The following fragment shows calls of <var>EbcdicToAscii</var> against a variety of EBCDIC characters.
The [[X (String function)|X]] constant function is used in the example.
The [[X (String function)|X]] constant function is used in the example.
    %e <var>String</var> Len 20
<p class="code">%e <var>String</var> Len 20
    %a <var>String</var> Len 20
%a <var>String</var> Len 20
    %e = '12'
%e = '12'
    %a = %e:<var>EbcdicToAscii</var>
%a = %e:<var>EbcdicToAscii</var>
    Print %a:<var>String</var>ToHex
Print %a:<var>String</var>ToHex


    %e = '1&amp;#x0A;2'
%e = '1&amp;#x0A;2'
    %a = %e:<var>EbcdicToAscii</var>(CharacterDecode=True)
%a = %e:<var>EbcdicToAscii</var>(CharacterDecode=True)
    Print %a:<var>String</var>ToHex
Print %a:<var>String</var>ToHex


    %e = '&amp;copy;'
%e = '&amp;copy;'
    %a = %e:<var>EbcdicToAscii</var>(CharacterDecode=True)
%a = %e:<var>EbcdicToAscii</var>(CharacterDecode=True)
    Print %a:<var>String</var>ToHex
Print %a:<var>String</var>ToHex


    %e = 'F1FFF2':X
%e = 'F1FFF2':X
    %a = %e:<var>EbcdicToAscii</var>
%a = %e:<var>EbcdicToAscii</var>


</p>
The result is:
The result is:
    3132
<p class="output">3132
    310A32
310A32
    A9
A9
    CANCELLING REQUEST: MSIR.0751: Class STRING, function
CANCELLING REQUEST: MSIR.0751: Class STRING, function
      EBCDICTOASCII: CHARACTER TRANSLATIONEXCEPTION
  EBCDICTOASCII: CHARACTER TRANSLATIONEXCEPTION
      exception: EBCDIC character X'FF' without valid
  exception: EBCDIC character X'FF' without valid
      translation to ASCII at byte position 2 ...
  translation to ASCII at byte position 2 ...


</p>
==See also==
==See also==
[[List of intrinsic String methods]]
[[List of intrinsic String methods]]

Revision as of 15:49, 20 January 2011

Convert EBCDIC string to ASCII (String class)


This intrinsic function converts an EBCDIC string to ASCII (ISO 8859-1) using the current Unicode tables. Optionally, character references, entity references, and '&amp.amp;' references are converted to the represented ASCII character.

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

Syntax

%outString = string:EbcdicToAscii[( [CharacterDecode= boolean])] Throws CharacterTranslationException

Syntax terms

%ascii A string variable to receive the method object string translated to Ascii.
string An EBCDIC character string.
CharacterDecode=bool The optional (name required) CharacterDecode argument is a Boolean: *If its value is 'True', an ampersand (&) in the input EBCDIC string is allowed only as the beginning of one of these types of character or entity reference: **The substring '&amp;'. This substring is converted to a single '&' character. **A hexadecimal character reference (for example, the six characters '&#x90;' for the ASCII Device Control String control character). The character reference is converted to the referenced character. **As of Sirius Mods version 7.6, an XHTML entity reference (for example, the six characters '&copy;' for the copyright character). The entity reference is converted to the referenced character. A decimal character reference (for example, &#172;) is not allowed. *If its value is 'False', the default, an ampersand is treated only as a normal character.

Exceptions

This intrinsic 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.

Usage notes

  • You can find the list of XHTML entities on the Internet at the following URL:

http://www.w3.org/TR/xhtml1/dtds.html#h-A2

Examples

The following fragment shows calls of EbcdicToAscii against a variety of EBCDIC characters. The X constant function is used in the example.

%e String Len 20 %a String Len 20 %e = '12' %a = %e:EbcdicToAscii Print %a:StringToHex %e = '1&#x0A;2' %a = %e:EbcdicToAscii(CharacterDecode=True) Print %a:StringToHex %e = '&copy;' %a = %e:EbcdicToAscii(CharacterDecode=True) Print %a:StringToHex %e = 'F1FFF2':X %a = %e:EbcdicToAscii

The result is:

3132 310A32 A9 CANCELLING REQUEST: MSIR.0751: Class STRING, function EBCDICTOASCII: CHARACTER TRANSLATIONEXCEPTION exception: EBCDIC character X'FF' without valid translation to ASCII at byte position 2 ...

See also

List of intrinsic String methods