Utf16ToUnicode (String function): Difference between revisions

From m204wiki
Jump to navigation Jump to search
mNo edit summary
 
mNo edit summary
Line 32: Line 32:


[[Category:Intrinsic String methods|Utf16ToUnicode function]]
[[Category:Intrinsic String methods|Utf16ToUnicode function]]
[[Category:Intrinsic methods]]                                                                     
[[Category:Intrinsic methods]]
[[Category:System methods]]

Revision as of 20:11, 31 December 2010

This intrinsic function converts a UTF-16 Longstring byte stream to Unicode. The Utf16ToUnicode function is available as of version 7.3 of the Sirius Mods.

Utf16ToUnicode syntax

  %unicode = string:Utf16ToUnicode       

Syntax Terms

%unicode
A string variable to receive the method object string translated to Unicode.
string
A String or Longstring that is presumed to contain a UTF-16 byte stream.

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

  • The input UTF-16 stream may contain a Byte Order Mark (U+FEFF). If one is present, that controls the conversion from UTF-16 to Unicode. If a Byte Order Mark is not present, the input stream is considered to be a Big Endian stream, that is, it is the same as if the stream were preceded by the two bytes X'FE' and X'FF', in that order.
  • UTF-8 and UTF-16 has more information about UTF-16 conversions.
  • The Utf8ToUnicode method converts a UTF-8 byte stream to Unicode.

Examples

In the following fragment, Utf16ToUnicode converts a hexadecimal input to a single Unicode character. The 'X' constant function is used in the example.

   %u Unicode                                                                                       
   %u = '0032':X:Utf16ToUnicode                                                                     
   Print %u                                                                                         

The result is:

   2