Share via


Páginas de códigos en Visual FoxPro

Los datos almacenados en Visual FoxPro suelen estar etiquetados con una página de códigos, que es una tabla de caracteres y los números correspondientes en memoria que utiliza Windows para mostrar datos correctamente. Por ejemplo, si introduce la letra C en un archivo .dbf, la letra se almacena en el disco duro como el número 67. Cuando abra el archivo, Visual FoxPro determina su página de códigos, la inspecciona para buscar el carácter correspondiente al número 67 y muestra el carácter (C) en el monitor.

Las páginas de códigos corresponden aproximadamente a alfabetos diferentes. Por ejemplo, Windows suministra páginas de códigos para los idiomas inglés, alemán, escandinavos, etc. Usando páginas de códigos diferentes, las aplicaciones pueden mostrar correctamente caracteres de estos diferentes alfabetos.

Páginas de códigos en Visual FoxPro

Visual FoxPro muestra los datos utilizando una página de códigos. De forma predeterminada, es la página de códigos que utiliza Windows en ese momento. Sin embargo, puede anular la página de códigos de Windows si especifica otra página alternativa en el archivo de configuración (debe especificar una página de códigos válida).

Las tablas de Visual FoxPro se etiquetan con la página de códigos que estaba en uso cuando se creó la tabla. Cuando use la tabla, Visual FoxPro compara la página de códigos de la tabla con la página de códigos actual. Si coinciden, Visual FoxPro muestra los datos tal como son. Si no existe ninguna página de códigos para la tabla (por ejemplo, la tabla se creó en una versión anterior de FoxPro), Visual FoxPro solicita una página de códigos y marca el archivo con esa página.

Si la página de códigos de la tabla no coincide con la del sistema, Visual FoxPro intenta convertir los caracteres de la primera a la página de códigos actual. Por ejemplo, si está utilizando Visual FoxPro y la página de códigos actual del sistema es la inglesa, el carácter ü se representa por el valor ANSI 252. Si la página de códigos de la tabla representa el carácter ü como el valor ANSI 219, Visual FoxPro convierte todas las instancias del valor ANSI 219 a ANSI 252 para que se muestren correctamente.

La conversión de las páginas de códigos no funciona siempre correctamente porque las páginas suelen contener caracteres que no se representan uno a uno en otras páginas de códigos. Por ejemplo, no puede asignar datos que contengan los caracteres de dibujo de línea de MS-DOS® en Windows, porque las páginas de códigos de Windows no contienen estos caracteres. Tampoco puede convertir datos creados en la página de códigos de ruso en una página de códigos de inglés, porque no existe una correspondencia uno a uno entre los alfabetos de estos idiomas. Por último, Visual FoxPro no podría contener un mapa de conversión de caracteres para una página de códigos determinada. En ese caso, los datos se muestran sin conversión de página de códigos. Visual FoxPro no muestra ningún error que indique que no se está produciendo la conversión de páginas de códigos. Cualquiera de las situaciones anteriores puede hacer que algunos caracteres se muestren de forma indebida.

Si desea crear una aplicación para una configuración regional determinada, puede evitar los problemas de conversión de las páginas de códigos si crea los componentes de la aplicación con la página de códigos diseñada para esa configuración regional y ese entorno. Por ejemplo, para crear una aplicación destinada a Rusia, deberá utilizar la página de códigos 1251, 866 ó 10007 para los usuarios de entornos Windows, MS-DOS o Macintosh, respectivamente. Para obtener una lista completa, consulte Páginas de códigos compatibles con Visual FoxPro.

Si necesita escribir algunos caracteres no representados por teclas del teclado, puede hacerlo usando ALT junto con una combinación de teclas del teclado numérico. Sin embargo, no olvide que la misma combinación de teclas usada en diferentes entornos suele presentar resultados distintos. Por ejemplo, si introduce ALT+0182 con la página de códigos 1252 en Visual FoxPro, verá el símbolo del párrafo. En contraste, si introduce ALT+0182 con la página de códigos 437 en FoxPro para MS-DOS, verá un carácter gráfico con una doble línea vertical que se junta con una línea horizontal sencilla.

Aunque Visual FoxPro admite muchas páginas de códigos, sólo se suelen utilizar unas pocas. Con Visual FoxPro para Windows, por ejemplo, los usuarios de habla inglesa utilizan normalmente la página de códigos 1252, mientras que en Visual FoxPro para Macintosh utilizan habitualmente la página de códigos 10000. Sin embargo, en FoxPro para MS-DOS, suelen utilizar la página de códigos 437.

Al trabajar con páginas de códigos, no olvide comprobar que la interfaz de usuario y los datos se muestran correctamente usando la página de códigos diseñada para una configuración regional determinada. Si ve caracteres inesperados en la pantalla, compruebe la página de códigos asociada.

Vea también

Escribir datos internacionales | Especificar la página de códigos de un archivo .dbf | Desarrollar aplicaciones internacionales | Especificar la página de códigos de un archivo de texto | Determinar la página de códigos de un archivo de proyecto