En 4D, el lenguaje así como el motor de la base de datos almacenan y manipulan nativamente los caracteres en Unicode. Este principio facilita la internacionalización de las aplicaciones 4D. El unicode es un juego de caracteres estándar unificado que administra prácticamente todo los lenguajes utilizados en el mundo. Un juego de caracteres es una tabla de correspondencia caracter/valor numérico, por ejemplo “a”->1, “b”->2, “5”->15, “oe”->662, etc. Mientras que con ASCII, el valor numérico de base está generalmente entre 1 y 127, con Unicode el límite superior supera 65 000, lo que significa que puede representar casi todos los caracteres de todos los lenguajes.
Hay diferentes maneras de codificar los valores numéricos Unicode: UTF-16 los codifica en enteros de 16-bits, UTF-32 utiliza enteros de 32-bits y UTF-8 enteros de 8-bits. 4D utiliza principalmente UTF-16 (como Windows y macOS). Algunas veces, esencialmente para necesidades específicas relacionadas con Internet, 4D utiliza UTF-8 que tiene la ventaja de ser más compacto y tener mejor legibilidad para los caracteres comunes (a-z,0-9).
Nota: 4D usa internamente la codificación UTF-16 para almacenar texto en campos y variables. A menos que se mencione específicamente, un carácter, posición o longitud manejada a través del lenguaje de programación siempre se refiere a los valores en UTF-16.
Para mayor información sobre el Unicode estándar, por favor consulte, la siguiente página:
http://en.wikipedia.org/wiki/Unicode
Una lista de códigos Unicode:
http://en.wikipedia.org/wiki/List_of_Unicode_characters#See_also
Advertencia: en Unicode, los siguientes códigos de caracteres están reservados y no deben incluirse en un texto:
0
65534 (FFFE)
65535 (FFFF)