HexToString (String function): Difference between revisions

From m204wiki
Jump to navigation Jump to search
 
Line 34: Line 34:
<p class="code">[[PrintText statement|printText]] {'E2818995A340D481998985':hexToString}
<p class="code">[[PrintText statement|printText]] {'E2818995A340D481998985':hexToString}
</p>
</p>
<li>The following statement displays <code>??</code>' because no displayable characters exist for the specified hex values:
<li>The following statement displays <code>??</code> because no displayable characters exist for the specified hex values:
<p class="code">printText {'FFFE':hexToString(signed=true)}
<p class="code">printText {'FFFE':hexToString(signed=true)}
</p>
</p>

Latest revision as of 20:58, 2 November 2012

Convert a hexadecimal string to Ebcdic (String class)


HexToString is an intrinsic function that returns the unencoded value of a hex encoded string.

Syntax

%outString = string:HexToString Throws InvalidHexData

Syntax terms

%outString A string variable to receive the unencoded value of the method object string.
string A hex-encoded string value.

Exceptions

This intrinsic function can throw the following exceptions:

InvalidHexData
If the method object string does not contain a properly encoded hexadecimal value. The exception object indicates the position of the first invalid character in the method object string, or it indicates a zero if the method object string had an odd number of characters.

Usage notes

  • Hex (short for hexadecimal) encoding is usually used for debugging when there is a concern that non-displayable characters (including trailing blanks) might be present in a string. By hex-encoding such a string, all non-displayable bytes are converted to displayable hexadecimal equivalents.
  • HexToString requires a method object string with an even number of bytes.
  • HexToString displays a question mark (?) in cases where a converted hex value has no displayable character representation.
  • HexToString is available as of Sirius Mods version 7.2.

Examples

  1. The following statement displays Saint Marie:

    printText {'E2818995A340D481998985':hexToString}

  2. The following statement displays ?? because no displayable characters exist for the specified hex values:

    printText {'FFFE':hexToString(signed=true)}

See also

  • X is a compile-time only equivalent of the HexToString method.
  • The inverse of HexToString is StringToHex.