Utf16ToUnicode (String function): Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (example tag)
m (more tags)
Line 1: Line 1:
{{Template:String:Utf16ToUnicode subtitle}}
{{Template:String:Utf16ToUnicode subtitle}}
The <var>Utf16ToUnicode</var> [[Intrinsic classes|intrinsic]] function converts a UTF-16 <var>Longstring</var> byte stream to <var>Unicode</var>.
The <var>Utf16ToUnicode</var> [[Intrinsic classes|intrinsic]] function converts a UTF-16 <var>Longstring</var> byte stream to <var>Unicode</var>.


Line 12: Line 11:
<td>A string that is presumed to contain a UTF-16 byte stream.</td></tr>
<td>A string that is presumed to contain a UTF-16 byte stream.</td></tr>
<tr><th>AllowUntranslatable</th>
<tr><th>AllowUntranslatable</th>
<td><var class="term">AllowUntranslatable</var> is an optional, but <var class="term">nameRequired</var>, parameter, which is a <var>[[Boolean Enumeration]]</var> value that specifies ....</td></tr>
<td><var class="term">AllowUntranslatable</var> is an optional, but var>[[Methods#Named parameters|Name-Required]]</var>, parameter, which is a <var>[[Boolean Enumeration]]</var> value that specifies ....</td></tr>
<tr><th>Bom</th>
<tr><th>Bom</th>
<td></td></tr>
<td></td></tr>
Line 25: Line 24:


==Usage notes==
==Usage notes==
<ul><li>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.
<ul><li>The input UTF-16 stream may contain a Byte Order Mark (U+FEFF).<ul><li>If one is present, that controls the conversion from UTF-16 to <var>Unicode</var>.<li> 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.</ul>
<li>The <var>Utf16ToUnicode</var> function is available as of <var class="product">Sirius Mods</var> Version 7.3.</ul>
<li>The <var>Utf16ToUnicode</var> function is available as of <var class="product">[[Sirius Mods|"Sirius Mods"]]</var> Version 7.3.</ul>


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

Revision as of 06:20, 25 February 2011

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

The Utf16ToUnicode intrinsic function converts a UTF-16 Longstring byte stream to Unicode.

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 that is presumed to contain a UTF-16 byte stream.
AllowUntranslatable AllowUntranslatable is an optional, but var>Name-Required, parameter, which is a Boolean Enumeration value that specifies ....
Bom

Exceptions

Utf16ToUnicode 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.
  • The Utf16ToUnicode function is available as of "Sirius Mods" Version 7.3.

Examples

  1. In the following fragment, Utf16ToUnicode converts a hexadecimal input to a single Unicode character.

    %u unicode %u = '0032':X:Utf16ToUnicode print %u

    The result is:

    2

See also