UnicodeToUtf16 (Unicode function): Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (1 revision)
m (1 revision)
Line 9: Line 9:
===Syntax terms===
===Syntax terms===
<table class="syntaxTable">
<table class="syntaxTable">
<tr><th><i>%utf16Stream</i></th>
<tr><th>%utf16Stream</th>
<td>A <var>String</var> or <var>Longstring</var> variable to receive the method object string translated to a UTF-16 Big-Endian byte stream (that is, any <var>Unicode</var> point U+wxyz results in the pair of bytes X'wx' and X'yz', in that order). </td></tr>
<td>A <var>String</var> or <var>Longstring</var> variable to receive the method object string translated to a UTF-16 Big-Endian byte stream (that is, any <var>Unicode</var> point U+wxyz results in the pair of bytes X'wx' and X'yz', in that order). </td></tr>
<tr><th><i>unicode</i></th>
<tr><th>unicode</th>
<td>A <var>Unicode</var> string. </td></tr>
<td>A <var>Unicode</var> string. </td></tr>
<tr><th><b>InsertBOM=</b><i>bool</i></th>
<tr><th>InsertBOM=bool</th>
<td>The optional (name required) InsertBOM argument is a Boolean: <ul> <li>If its value is <tt>True</tt>, the "Byte Order Mark" (U+FEFF) is inserted at the start of the output stream. <li>If its value is <tt>False</tt>, the default, no Byte Order Mark is inserted. </ul></td></tr>
<td>The optional (name required) InsertBOM argument is a Boolean: <ul> <li>If its value is <tt>True</tt>, the "Byte Order Mark" (U+FEFF) is inserted at the start of the output stream. <li>If its value is <tt>False</tt>, the default, no Byte Order Mark is inserted. </ul></td></tr>
</table>
</table>

Revision as of 18:31, 5 February 2011

Translate to UTF-16 (Unicode class)


This function converts a Unicode string to a UTF-16 Longstring byte stream.

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

Syntax

%string = unicode:UnicodeToUtf16[( [InsertBOM= boolean])]

Syntax terms

%utf16Stream A String or Longstring variable to receive the method object string translated to a UTF-16 Big-Endian byte stream (that is, any Unicode point U+wxyz results in the pair of bytes X'wx' and X'yz', in that order).
unicode A Unicode string.
InsertBOM=bool The optional (name required) InsertBOM argument is a Boolean:
  • If its value is True, the "Byte Order Mark" (U+FEFF) is inserted at the start of the output stream.
  • If its value is False, the default, no Byte Order Mark is inserted.

Exceptions

This 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. See CharacterTranslationException exception class.

Usage notes

Examples

The following fragment shows a successful call of UnicodeToUtf16. The U constant function and StringToHex function are used in the example.

%u Unicode Initial('&#x31;':U) Print %u:UnicodeToUtf16:StringToHex Print %u:UnicodeToUtf16(InsertBOM=True):StringToHex

The result is:

0031 FEFF0031

See also