Sign in Join
FPDoc Onlineexperiment

UnicodeToUTF8 function

In unit LazUTF8

Encodes the given code point as an UTF-8 sequence of 1 to 4 bytes.

Declaration

pascal
function UnicodeToUTF8(CodePoint: Cardinal): string

Arguments

CodePoint

Unicode character value to convert in the function.

Function result

Number of bytes needed for the UTF-8-encoded value.

Description

UnicodeToUTF8 is an Integer function used to convert the Unicode character value in CodePoint to the sequence of bytes needed for the UTF-8 encoding. UnicodeToUTF8 stores the UTF-8-encoded byte values for the Unicode character in the Buf parameter.

The return value contains the number of bytes required for the UTF-8-encoded value (in the range 1..4). If it contains 0 (zero), the Unicode codepoint was invalid and an Exception is raised.

UnicodeToUTF8 does not process #0 byte values for the codepoint, as done for UTF-32.

Errors

Raises an Exception when Utf8TryFindCodepointStartCodePoint is an invalid Unicode character value. Raised with the message 'UnicodeToUTF8: invalid Unicode: XXXXXXXX'.

An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.