![]() |
Tipo de Dato
Saludos a todos
Alguien seria tan amable por favor de decirme que tipo de dato es esto : #1,#2...#9 y como pasarlo a string. muchas gracias por su atencion. :confused: |
Son caracteres de control (toda aquella tecla con código ASCII < 32). El #9 es la tecla retroceso, el resto no sé, pero busca un mapa de caracteres o Asciimap en internet.
Saludos |
los datos ke te comento son el resultado de la siguiente sentencia :
Código:
C := ApdComPort1.GetChar; |
Lo que ves es una convención de delphi... existente desde Turbo Pascal.
Dado que en el código ASCII hay caracteres no imprimibles (todos los menores a 32), a los creadores de Pascal se les ocurrió que cuando estas programando/depurando es necesario distinguir entre esos caracteres. Cómo ya ha mencionado Lepe, estos caracteres son utilizados a menudo cómo códigos de control (por ejemplo, por editores de texto o por impresoras) En lugar de mostrarte "muñequitos" o cosas raras... te muestran el código ascii del caracter representado precedido por el signo de numeral. Así, #1 es equivalente a chr(1), #9 a chr(9) (tabuldador), y cuando programas podes hacer algo cómo:
#13 = CR = Carriage return #10 = LF = Line Feed Cómo ves.. ya son caracteres que usualmente pertenecerán a un string. En el caso de la función que estas usando, significa que por el puerto has recibido ese caracter. Hasta luego. ;) |
gracias JAchguate por tu respuesta.
te pongo el codigo ke tengo : Código:
Lo ke deseo es saber si hay alguna manera de transformar el valor de C por ejemplo #6 ke sea solo 6. espero haberme hecho entender. |
Claro que si C se convertirá en cadenas de 1, 2 o hasta 3 caracteres... luego no vas a tener forma de distinguir, en la cadena, la organización de la misma. Es decir, si recibimos la secuencia #1#14#99#103 S terminará teniendo el valor '11499103' pero no sabremos cómo se formó esa cadena: ¿#1#1#4#9#9#1#0#3? ¿#11#49#91#0#3? ¿#11#4#99#10#3? ¡Es imposible saberlo! Hasta luego. ;) |
Interesante asi ke Ord me devuelve la parte numerica?
estoy recibiendo el cronometro de un tarifador gracias |
Cita:
Pudimos también usar un molde de tipo:
El resultado, cómo podrías comprobar, es el mismo. Cita:
Para mí, sin saber para lo que vas a usar este dato, tiene mas sentido ir almacenando directamente el caracter obtenido:
Para poder interpretarlo luego... cuando haga falta. Hasta luego. ;) |
lo estuve haciendo asi desde hace 2 semanas
Código:
C := ApdComPort1.GetChar; Código:
|
ah... claro.. es que si la cadena es para mostrarla al usuario... ya hemos dicho antes que son caracteres no imprimibles... es decir: sin representación visual.
Por lo que veo... ahora vas por mejor camino.. :D Hasta luego. ;) |
Si me sirvio de mucho tu ayuda.
Un ultimo favor, tengo la siguiente cadena : Código:
800000 Código:
00:00:08 |
Buscá la ayuda de la función Copy
Hasta luego. ;) |
La franja horaria es GMT +2. Ahora son las 22:23:04. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi