From Xojo Documentation

(Redirected from String.DefineEncoding)

Returns a String with the same data as the given string, but with the encoding of the passed encoding.


result = DefineEncoding(str, enc)
result = str.DefineEncoding(enc)

Part Type Description
result String The result of encoding str using the encoding specified by enc.
str String The String to be encoded.
enc TextEncoding The TextEncoding to be used to encode str.


This function is useful when you have a string whose encoding is known to you but not to your application. The encoding of all strings created in your application is UTF-8, so you don't have to use DefineEncoding on them.

Consult the values of Base entry for TextEncoding when creating the TextEncoding object using the GetTextEncoding function.

Sample Code

The following code takes 8 bytes from a MemoryBlock and sets the encoding to UTF16.

TextField1.Text = DefineEncoding(MyMemoryBlock.StringValue(0, 8), Encodings.UTF16)

This code uses DefineEncoding when reading text from a TCPSocket.

TextField1.Text = DefineEncoding(TCPSocket1.ReadAll, Encodings.UTF8)
TextField1.Text = TCPSocket1.ReadAll.DefineEncoding(Encodings.UTF8)

See Also

TextEncoding class; ConvertEncoding, Encoding, GetTextEncoding functions; Encodings module.