Skip to content

UnicodeToUtf8

Convert a unicode (UTF16) string to a UTF8 string

Declaration

Source position: ustringh.inc line 163

function UnicodeToUtf8(Dest: PAnsiChar; Source: PUnicodeChar; 
                      MaxBytes: SizeInt) : SizeInt;
function UnicodeToUtf8(Dest: PAnsiChar; MaxDestBytes: SizeUInt; 
                      Source: PUnicodeChar; SourceChars: SizeUInt)
                       : SizeUInt;

Description

Utf8ToUnicode converts the buffer in Source with a length of SourceBytes or for a maximum length of MaxBytes (or MaxDestbytes) bytes to the buffer pointed to by Dest. If Dest is Nil it will return the number of bytes needed to convert the UTF16 to UTF8. if MaxDestBytes allows for a null terminator, then it is also added to the output.

The function returns the number of copied bytes, or, if Dest is Nil, then it will return the number of bytes needed to perform the conversion.

Errors

On error, -1 is returned.

See also

Name Description
Utf8ToUnicode Convert a buffer with UTF-8 characters to widestring characters.
UTF8Encode Convert a widestring or unicodestring to an UTF-8 encoded ansistring.
UTF8Decode Convert an UTF-8 encoded ansistring to a unicodestring.
Utf8ToAnsi Convert a UTF-8 encoded Unicode string to an ansistring.
SetWideStringManager Set the widestring manager.