PC SOFT

AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

  • Tipos de cadenas de caracteres
  • Caso especial
  • Fixed string y ASCIIZ string
  • Manipular cadenas fijas
  • Notas
  • Valor predeterminado
  • Pasar una cadena de caracteres como parámetro a un procedimiento
  • Utilizar comillas en una cadena de caracteres
  • Comparación de los diferentes tipos de cadenas disponibles en WINDEV y WINDEV Mobile
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Otros
Procedimientos almacenados
Tipos de cadenas de caracteres
WLanguage propone diferentes tipos de cadenas de caracteres.
1. Los tipos más comunes son los siguientes:
  • Character
Carácter codificado en 1, 2 o 4 bytes según el modo de gestión de las cadenas de caracteres y la plataforma de ejecución.
  • En Windows:
    • en modo Ansi, un carácter está codificado en 1 byte,
    • en modo Unicode, un carácter está codificado en 2 bytes,
  • En Linux:
    • en modo Ansi, un carácter está codificado en 1 byte,
    • en modo Unicode, un carácter está codificado en 4 bytes,
  • En iOS, en Unicode, un carácter está codificado en 4 bytes.
Cuando un carácter está vacío, su valor corresponde a Charact(0).
PHP Cuando un carácter está vacío, su valor corresponde a una cadena vacía.
Versiones 17 y posteriores
WINDEVWEBDEV - Código Servidor Observación:
  • Si la configuración actual utiliza cadenas ANSI en tiempo de ejecución, las variables de tipo Character serán caracteres ANSI (comportamiento predeterminado).
  • Si la configuración actual utiliza cadenas Unicode en tiempo de ejecución, las variables de tipo Character serán caracteres Unicode.
Recordatorio: Para modificar la gestión de cadenas de caracteres en la configuración actual:
  1. Abra la ventana de descripción del proyecto: en la pestaña "Proyecto", en el grupo "Proyecto", haga clic en "Descripción".
  2. En la pestaña "Proyecto", haga clic en el botón "Descripción de la configuración actual".
  3. En la ventana que aparece, vaya a la pestaña "Unicode" y seleccione el modo deseado.
Nueva funcionalidad versión 17
WINDEVWEBDEV - Código Servidor Observación:
  • Si la configuración actual utiliza cadenas ANSI en tiempo de ejecución, las variables de tipo Character serán caracteres ANSI (comportamiento predeterminado).
  • Si la configuración actual utiliza cadenas Unicode en tiempo de ejecución, las variables de tipo Character serán caracteres Unicode.
Recordatorio: Para modificar la gestión de cadenas de caracteres en la configuración actual:
  1. Abra la ventana de descripción del proyecto: en la pestaña "Proyecto", en el grupo "Proyecto", haga clic en "Descripción".
  2. En la pestaña "Proyecto", haga clic en el botón "Descripción de la configuración actual".
  3. En la ventana que aparece, vaya a la pestaña "Unicode" y seleccione el modo deseado.
WINDEVWEBDEV - Código Servidor Observación:
  • Si la configuración actual utiliza cadenas ANSI en tiempo de ejecución, las variables de tipo Character serán caracteres ANSI (comportamiento predeterminado).
  • Si la configuración actual utiliza cadenas Unicode en tiempo de ejecución, las variables de tipo Character serán caracteres Unicode.
Recordatorio: Para modificar la gestión de cadenas de caracteres en la configuración actual:
  1. Abra la ventana de descripción del proyecto: en la pestaña "Proyecto", en el grupo "Proyecto", haga clic en "Descripción".
  2. En la pestaña "Proyecto", haga clic en el botón "Descripción de la configuración actual".
  3. En la ventana que aparece, vaya a la pestaña "Unicode" y seleccione el modo deseado.
WEBDEV - Código NavegadorAndroidWidget Android Universal Windows 10 AppJava El tipo Character no está soportado. Es reemplazado por el tipo String.
  • Versiones 17 y posteriores
    Ansi string
    Nueva funcionalidad versión 17
    Ansi string
    Ansi string
Cadena de tamaño dinámico que solo contiene caracteres en formato ANSI.
Este formato es necesario para manipular:
  • archivos XML
  • archivos RTF
  • archivos PDF
  • funciones que utilizan el formato UTF8, etc.
Windows Mobile Observaciones:
  • Las cadenas de tipo Ansi solo se pueden utilizar si la opción "Utilizar cadenas ANSI en ejecución" está seleccionada.
  • Para modificar el modo de gestión de las cadenas de caracteres en la configuración actual:
    1. Abra la ventana de descripción del proyecto: en la pestaña "Proyecto", en el grupo "Proyecto", haga clic en "Descripción".
    2. En la pestaña "Proyecto", haga clic en el botón "Descripción de la configuración actual".
    3. En la ventana que aparece, vaya a la pestaña "Unicode". Seleccione la opción "Utilizar cadenas ANSI en ejecución".
  • Unicode string
Cadena de tamaño dinámico que solo contiene caracteres en formato UNICODE.
WINDEVWEBDEV - Código Servidor En una configuración que utiliza cadenas Ansi en tiempo de ejecución, este tipo de cadena puede ser devuelto por la función AnsiToUnicode o por una de las funciones de gestión de cadenas Unicode.
Para obtener más información, consulte Uso de Unicode.
Versiones 17 y posteriores
WINDEVWEBDEV - Código Servidor Este tipo de cadena de caracteres se utiliza de forma predeterminada si la configuración actual utiliza cadenas Unicode en ejecución.
Nueva funcionalidad versión 17
WINDEVWEBDEV - Código Servidor Este tipo de cadena de caracteres se utiliza de forma predeterminada si la configuración actual utiliza cadenas Unicode en ejecución.
WINDEVWEBDEV - Código Servidor Este tipo de cadena de caracteres se utiliza de forma predeterminada si la configuración actual utiliza cadenas Unicode en ejecución.
Windows Mobile Este tipo de cadena de caracteres es equivalente al tipo String.
WEBDEV - Código NavegadorAndroidWidget Android Universal Windows 10 AppJava Este tipo de cadena de caracteres no está soportado. Es reemplazado por el tipo String.
PHP Este tipo de cadena de caracteres no está soportado.
  • String
Cadena de tamaño dinámico.

El tipo "String" es específico de WLanguage. Con este tipo, no es necesario declarar la longitud de la cadena. Esta puede variar al utilizar la variable.
Versiones 17 y posteriores
WINDEVWEBDEV - Código Servidor Observación:
  • Si la configuración actual utiliza cadenas ANSI en tiempo de ejecución, las variables de tipo String serán cadenas ANSI (comportamiento predeterminado).
  • Si la configuración actual utiliza cadenas Unicode en tiempo de ejecución, las variables de tipo String serán cadenas Unicode.
Recordatorio: Para modificar la gestión de cadenas de caracteres en la configuración actual:
  1. Abra la ventana de descripción del proyecto: en la pestaña "Proyecto", en el grupo "Proyecto", haga clic en "Descripción".
  2. En la pestaña "Proyecto", haga clic en el botón "Descripción de la configuración actual".
  3. En la ventana que aparece, vaya a la pestaña "Unicode" y seleccione el modo deseado.
Nueva funcionalidad versión 17
WINDEVWEBDEV - Código Servidor Observación:
  • Si la configuración actual utiliza cadenas ANSI en tiempo de ejecución, las variables de tipo String serán cadenas ANSI (comportamiento predeterminado).
  • Si la configuración actual utiliza cadenas Unicode en tiempo de ejecución, las variables de tipo String serán cadenas Unicode.
Recordatorio: Para modificar la gestión de cadenas de caracteres en la configuración actual:
  1. Abra la ventana de descripción del proyecto: en la pestaña "Proyecto", en el grupo "Proyecto", haga clic en "Descripción".
  2. En la pestaña "Proyecto", haga clic en el botón "Descripción de la configuración actual".
  3. En la ventana que aparece, vaya a la pestaña "Unicode" y seleccione el modo deseado.
WINDEVWEBDEV - Código Servidor Observación:
  • Si la configuración actual utiliza cadenas ANSI en tiempo de ejecución, las variables de tipo String serán cadenas ANSI (comportamiento predeterminado).
  • Si la configuración actual utiliza cadenas Unicode en tiempo de ejecución, las variables de tipo String serán cadenas Unicode.
Recordatorio: Para modificar la gestión de cadenas de caracteres en la configuración actual:
  1. Abra la ventana de descripción del proyecto: en la pestaña "Proyecto", en el grupo "Proyecto", haga clic en "Descripción".
  2. En la pestaña "Proyecto", haga clic en el botón "Descripción de la configuración actual".
  3. En la ventana que aparece, vaya a la pestaña "Unicode" y seleccione el modo deseado.
WEBDEV - Código NavegadorAndroidWidget Android iPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile Este tipo de cadena de caracteres está en formato Unicode.
  • Buffer
Área de memoria binaria. Permite escribir un código que puede ser compartido entre WINDEV y WINDEV Mobile para manipular datos en bruto. Para obtener más información, consulte Tipo "Buffer".
WEBDEV - Código NavegadorUniversal Windows 10 App El tipo Buffer no está soportado.
2. También se pueden utilizar otros tipos de cadenas de caracteres:
  • String on
Cadena de longitud fija, terminada con un 0 binario (como en C). La longitud especificada corresponde al número máximo de caracteres de la cadena.
Este tipo de cadena de caracteres permite crear un código compatible WINDEV/WINDEV Mobile al llamar a las API existentes desde ambas plataformas.
WINDEVWEBDEV - Código Servidor Este tipo de cadena de caracteres está en formato ANSI.
Windows Mobile Este tipo de cadena de caracteres está en formato Unicode.
  • ASCIIZ string on
Cadena terminada con un 0 binario (como en C).
El tamaño de una cadena ASCIIZ no puede exceder 2 GB. La longitud de la cadena ASCIIZ debe ser igual a la longitud de la cadena más 1 (para el cero binario).
Windows Mobile Este tipo de cadena de caracteres no está disponible. Le recomendamos utilizar el tipo String On.
WEBDEV - Código NavegadorAndroidWidget Android Universal Windows 10 AppJava El tipo ASCIIZ String no está soportado. Es reemplazado por el tipo String.
  • Fixed string on
Cadena de longitud fija.
El tamaño de una cadena fija no puede exceder 2 GB. La cadena de caracteres se completa:
  • con 0 si la variable aún no está asignada.
  • con espacios si es necesario si la variable está asignada (similar al tipo "String" de Basic).
Windows Mobile Este tipo de cadena de caracteres no está disponible. Le recomendamos utilizar el tipo String On.
WEBDEV - Código NavegadorAndroidUniversal Windows 10 AppJava El tipo Fixed String no está soportado. Es reemplazado por el tipo String.
  • Pascal string on
Cadena precedida de un byte que especifica la longitud (como en Pascal). Este byte no es accesible. Por ejemplo, string[1] representa el primer carácter de la cadena y no su longitud.
La longitud de una cadena Pascal no puede exceder 255 caracteres. La longitud de la cadena Pascal debe ser igual a la longitud de la cadena.
Windows Mobile Este tipo de cadena de caracteres no está disponible. Le recomendamos utilizar el tipo String On.
WEBDEV - Código NavegadorAndroidWidget Android Universal Windows 10 AppJava El tipo Pascal String no está soportado. Es reemplazado por el tipo String.
  • Unicode string on
Cadena de longitud fija que solo contiene caracteres en formato UNICODE.
Windows Mobile Este tipo de cadena de caracteres es equivalente al tipo String on.
WEBDEV - Código NavegadorAndroidWidget Android Universal Windows 10 AppJava Este tipo de cadena de caracteres no está soportado. Es reemplazado por el tipo String.
PHP Este tipo de cadena de caracteres no está soportado.
Observaciones:
  • El tipo "String on" debe utilizarse para enviar parámetros de entrada/salida a una API de Windows.
  • Todos los tipos avanzados (excepto "String") son compatibles con los otros lenguajes de programación (Turbo Pascal Windows, C, Visual Basic Windows, etc.) o para recibir el resultado de una API de Windows.
  • WINDEV Mobile y WINDEV no proponen los mismos tipos de cadenas de caracteres. Para obtener más información sobre los diferentes tipos de cadenas de caracteres, consulte la sección Notas.
Caso especial
WINDEVWEBDEV - Código ServidorReportes y ConsultasWindowsPHPCódigo de Usuario (UMC)

Fixed string y ASCIIZ string

  • Al declarar una cadena ASCIIZ o una cadena fija, se asigna inmediatamente la memoria necesaria. Por lo tanto, debe evitar utilizar cadenas demasiado grandes.
  • La cadena fija se completa con espacios. Inicializar y asignar una cadena de gran tamaño (varios cientos de kilobytes) puede llevar bastante tiempo.
WINDEVWEBDEV - Código NavegadorWindowsAndroidWidget Android Universal Windows 10 AppJava

Manipular cadenas fijas

Las cadenas fijas no están disponibles en Java. Son reemplazadas en ejecución por el tipo String.
Sin embargo, se puede utilizar la función Complete en una variable de tipo String:
MyString is string
MyString = Complete("Test", 10)
// Equivalent to
// MyString is fixed string on 10 characters
// MyString = "Test"
Notas

Valor predeterminado

  • Una variable de tipo "String" o "String on" declarada pero no inicializada corresponde a una cadena vacía ("").
  • Una variable de tipo "Buffer" declarada pero no inicializada está vacía.
  • Una variable de tipo "Buffer on" declarada pero no inicializada se completa con 0.

Pasar una cadena de caracteres como parámetro a un procedimiento

Se puede pasar una variable de tipo "String" como parámetro a un procedimiento.
Atención: Si la variable tiene una longitud fija, se deben eliminar los espacios. Por ejemplo:
MyString is string
MyString = "WINDEV is great"
// Delete spaces from MyString
MyString = NoSpace(MyString)
CountLetter(MyString)
// CountLetter is a procedure

Utilizar comillas en una cadena de caracteres

Para utilizar comillas en una cadena de caracteres, deben duplicarse.
Por ejemplo:
MyString is string
MyString = "The ""General conditions"" option must be checked"
Info(MyString)
// Displays: The "General conditions" option must be checked
WINDEVWEBDEV - Código ServidorReportes y ConsultasWindowsWindows MobileCódigo de Usuario (UMC)

Comparación de los diferentes tipos de cadenas disponibles en WINDEV y WINDEV Mobile

WINDEV/WEBDEV
Formato de cadena
WINDEV Mobile
Formato de cadena
StringANSIUnicode
CharacterANSIUnicode
ASCIIZ string onCadena ANSI de N caracteresno disponible
Fixed string onCadena ANSI de N caracteresno disponible
Pascal string onCadena ANSI de N caracteresno disponible
Unicode stringUnicodeUnicode
BufferBinarioBinario
String onCadena ANSI de N caracteresCadena Unicode de N caracteres
Unicode string onCadena Unicode de N caracteresCadena Unicode de N caracteres
Buffer onMemo binario de N bytesMemo binario de N bytes
Versión mínima requerida
  • Versión 9
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario