Character code

4D - Documentation   Français   English   German   Español   4D v11 SQL, Comandos por temas   4D v11 SQL, Lista alfabética de comandos   4D v11 SQL, Constantes por temas   Regresar   Anterior   Siguiente

versión 11 (Modificado)


Character code (unCaracter) Numérico

ParámetroTipoDescripción
unCaracterAlfaCaracter para el cual obtener el código
ResultadoNuméricoCódigo del caracter

Descripción

El comando Character code devuelve el código del carácter actual de unCaracter.

Si la base funciona en modo Unicode (modo por defecto para las bases creada a partir de la versión 11 de 4D), el comando devuelve el código Unicode UTF-16 de unCaracter (entre 1 y 65535).

Si la base funciona en modo compatibilidad ASCII, el comando devuelve el código ASCII de unCaracter (entre 0 y 255).

Para mayor información sobre los diferentes modos para la gestión de cadenas en 4D, consulte la sección Acerca de Unicode.

Si hay más de un carácter en la cadena, Character code devuelve únicamente el código del primer carácter.

La función Char es la contraparte de Character code. Devuelve el carácter que un código UTF-16 o ASCII representa.

Importante: En modo compatibilidad ASCII, todos los valores de texto, campos o variables, utilizan la tabla ASCII de Mac OS, en las plataformas Macintosh y Windows— si no se ha efectuado ninguna conversión a otra tabla ASCII. Para mayor información, consulte la sección Códigos ASCII.

Ejemplos

1. Los caracteres en mayúsculas y minúsculas se consideran iguales en una comparación. Puede utilizar Character code para diferenciar entre los caracteres en mayúsculas y en minúsculas. Por lo tanto, esta línea devuelve True:

   ("A" = "a")

Por otra parte, esta línea devuelve False:

   (Character code("A")=Character code("a"))

2. Este ejemplo devuelve el código del primer carácter de la cadena "ABC":

   RecupCod:=Character code("ABC")  ` RecupCod toma el valor 65, el código del carácter de A

3. El siguiente ejemplo prueba los retornos de carro y los tabuladores:

   For($vlCar;1;Length(vtText))
      Case of
         : (vtText[[$vlCar]]=Char(Carriage return))
            ` Hacer algo
         : (vtText[[$vlCar]]=Char(Tab))
            ` Hacer otra cosa
         : (...)
            ` ...
      End case
   End for

Cuando se ejecuta muchas veces en textos largos, se ejecutará más rápido, una vez compilado, si se escribe de esta forma:

   For($vlCar;1;Length(vtText))
      $vlCode:=Character code(vtText[[$vlCar]])
      Case of
         : ($vlCode=Carriage return)
            ` Hacer algo
         : ($vlCode=Tab)
            ` Hacer otra cosa
         : (...)
            ` ...
      End case
   End for

La segundo código se ejecuta más rápido por dos razones: sólo referencia un carácter por iteración y utiliza comparaciones de enteros largos en lugar de comparaciones de cadenas para probar los retornos de carro y las tabulaciones. Utilice esta técnica cuando trabaje con códigos comunes tales como CR y TAB.

Ver también

Char, Códigos ASCII, Símbolos de referencia de caracteres.


4D - Documentation   Français   English   German   Español   4D v11 SQL, Comandos por temas   4D v11 SQL, Lista alfabética de comandos   4D v11 SQL, Constantes por temas   Regresar   Anterior   Siguiente