Note that the input is expected to be already in native endianness,
an initial byte-order-mark character is not handled specially.
GLib.convert can be used to convert a byte buffer of UTF-16 data of
ambiguous endianness.
Further note that this function does not validate the result
string; it may (for example) include embedded nul characters. The only
validation done by this function is to ensure that the input can
be correctly interpreted as UTF-16, i.e. it doesn’t contain
unpaired surrogates or partial character sequences.
Parameters
str: number[]
a UTF-16 encoded string
Returns [string,number,number]
a pointer to a newly allocated UTF-8 string. This value must be freed with GLib.free.
Convert a string from UTF-16 to UTF-8.
The result will be terminated with a nul byte.
Note that the input is expected to be already in native endianness, an initial byte-order-mark character is not handled specially. GLib.convert can be used to convert a byte buffer of UTF-16 data of ambiguous endianness.
Further note that this function does not validate the result string; it may (for example) include embedded nul characters. The only validation done by this function is to ensure that the input can be correctly interpreted as UTF-16, i.e. it doesn’t contain unpaired surrogates or partial character sequences.