[Lazarus-es] Funci?n para convertir n?mero a cadena

Ismael L. Donis Garc?a ismael en citricos.co.cu
Mie Dic 9 18:34:53 CET 2009


De esa forma funciona pero no devuelve lo mismo.

Si quiere mira en pantalla para que veas: los códigos por ejemplo de 148, 
149 y 156

El problema que tengo es que tengo aplicaciones corriendo en Visual Basic 6 
y ahora no logro crear la función que me devuelva lo mismo con Lazarus, ya 
que AnsiToUTF8(Char(149)) <> Asc(149). Y esto me trae el embrollo de no 
poder atacar la misma base de datos con aplicaciones realizadas en los 
diferentes lenguajes, cuestión esta que es imprescindible para mi hasta que 
no migre todas las aplicaciones, que de hecho son bastantes. Esto sin contar 
mi conocimiento nulo de Lazarus o Delphi y por consiguiente el retrazo que 
esto trae en la migración.

Por lo que veo tendré que rehacer la función en VB6

Saludos reiterados
=========
¦¦ ISMAEL ¦¦
=========
----- Mensaje original ----- 
De: "JoshyFun" <joshyfun en gmail.com>
Para: "Spanish version of Lazarus List" 
<lazarus-es en lists.lazarus.freepascal.org>
Enviado: miércoles, 09 de diciembre de 2009 09:45
Asunto: Re: [Lazarus-es] Funci?n para convertir n?mero a cadena


Hello Ismael,

Wednesday, December 9, 2009, 3:33:23 PM, you wrote:

ILDGa> No tengo acceso a Internet, pero ninguna de las que envías funciona.
ILDGa> Habré Microsoft Word y teclea Alt + 149
ILDGa> Después prueba con:
ILDGa> showmessage(char(149));
ILDGa> showmessage(chr(149));
ILDGa> showmessage(IntToStr(149));
ILDGa> Y verás que ninguna da el resultado de Alt+149, y yo lo que quiero es 
una
ILDGa> función que me de ese resultado, soy analfabeto pero no burro.
ILDGa> En Visual Basic 6 existe la función Asc

El problema aquí es justo el inverso de otros casos, lo que ves en
pantalla tiene que ser UTF-8 para que lo veas bien (lo que esperas
ver). ShowMessage(AnsiToUTF8(Char(149))).

VB6 es ANSI en casi todo lo que hace, por eso "las cosas no son
iguales" en lo referente a como codificas los caracteres superiores a
ASCII 127.

El esfuerzo de empezar a trabajar con UTF-8 o UTF-16 es muy
recompensado a la larga, ten encuenta que los sistemas y lenguajes
huyen despavoridos del ANSI por sus terribles limitaciones y pronto
(como pasa ya parcialmente en Lazarus) trabajar con las strings en
ANSI será más complicado que hacerlo en UTF-8 o UTF-16 directamente
(de hecho WinNT es UTF-16 al completo, y las funciones ANSI, las
acabadas en "A" tienen conversiones entrantes y salientes, de ANSI ->
UTF-16 -> ANSI).

-- 
Best regards,
 JoshyFun


_______________________________________________
Lazarus-es mailing list
Lazarus-es en lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es






More information about the Lazarus-es mailing list