Utf16ToUnicode (String function): Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (1 revision)
m (1 revision)
Line 1: Line 1:
{{Template:String:Utf16ToUnicode subtitle}}
{{Template:String:Utf16ToUnicode subtitle}}


This [[Intrinsic classes|intrinsic]] function converts a UTF-16 Longstring byte stream to Unicode.
This [[Intrinsic classes|intrinsic]] function converts a UTF-16 <var>Longstring</var> byte stream to <var>Unicode</var>.
The <var>Utf16ToUnicode</var> function is available as of version 7.3 of the <var class=product>Sirius Mods</var>.
The <var>Utf16ToUnicode</var> function is available as of version 7.3 of the <var class=product>Sirius Mods</var>.
==Syntax==
==Syntax==
Line 8: Line 8:
<table class="syntaxTable">
<table class="syntaxTable">
<tr><th>%unicode</th>
<tr><th>%unicode</th>
<td>A string variable to receive the method object string translated to Unicode. </td></tr>
<td>A string variable to receive the method object string translated to <var>Unicode</var>. </td></tr>
<tr><th>string</th>
<tr><th>string</th>
<td>A String or Longstring that is presumed to contain a UTF-16 byte stream.</td></tr>
<td>A <var>String</var> or <var>Longstring</var> that is presumed to contain a UTF-16 byte stream.</td></tr>
</table>
</table>


Line 21: Line 21:
</dl>
</dl>
==Usage notes==
==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.
*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 <var>Unicode</var>. 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.
*[[UTF-8 and UTF-16]] has more information about UTF-16 conversions.
*The [[Utf8ToUnicode (String function)|Utf8ToUnicode]] method converts a UTF-8 byte stream to Unicode.
*The [[Utf8ToUnicode (String function)|Utf8ToUnicode]] method converts a UTF-8 byte stream to <var>Unicode</var>.
==Examples==
==Examples==


In the following fragment, <var>Utf16ToUnicode</var> converts a hexadecimal input to a single Unicode character. The ''''[[X (String function)|X]]'''' constant function is used in the example.
In the following fragment, <var>Utf16ToUnicode</var> converts a hexadecimal input to a single <var>Unicode</var> character. The ''''[[X (String function)|X]]'''' constant function is used in the example.
     %u Unicode
     %u <var>Unicode</var>
     %u = '0032':X:<var>Utf16ToUnicode</var>
     %u = '0032':X:<var>Utf16ToUnicode</var>
     Print %u
     Print %u

Revision as of 15:48, 20 January 2011

Convert a UTF-16 Longstring bytestream to Unicode (String class)


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.

Syntax

%unicode = string:Utf16ToUnicode[( [AllowUntranslatable= boolean], - [Bom= utf16BOM])] Throws CharacterTranslationException

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