![]() |
Tengo un problema con delimitadores
Hola:
En una variable tipo string[] tengo esto usando el lenguaje C# en decimal. Código:
#I225.7O226.2L006B100V25.7F50.2H50.2R0080S€„€ˆ„\r Código:
string entrada2 = "35 73 50 51 53 46 51 79 50 51 53 46 55 76 48 48 54 66 49 48 48 86 50 54 46 48 70 53 48 46 50 72 53 48 46 50 82 48 48 56 48 83 144 132 128 136 132 192 13"; La S muestra esto. S€„€ˆ„\r Siempre estas cadenas empieza con # y acaba con \r. No se si hace falta usar StartsWith y EndsWith. Tabla ASCII. ![]() Fijándose en la tabla ASCII la S rn decimal es 83. A partir de ahí en la cadena entrada2 tiene 144 132 128 136 132 192 y el final que es retorno de carro es el 13 en decimal. Ya que se lee bien los string de esta linea I225.7O226.2L006B100V25.7F50.2H50.2R0080S y después de la S me da disparates como esto: S€„€ˆ„\r, mejor pasarlo a decimal que es esto otro 144 132 128 136 132 192. El resultado si ejecuto el código completo es este: ![]() La idea es que muestre bien los datos completo al recibirlos, no en en tipo string y entre medio bit, es decir, datos de distintos tipos. Parece ser que debo capturar o coger estos datos: I225.7O226.2L006B100V25.7F50.2H50.2R0080 Separarlos y mostralo así: 225.7 226.2 006 100 25.7 50.2 50.2 0080 €„€ˆ„ Como se puede ver, se muestra esto de la S. €„€ˆ„ Es ilegible, debería mostrarse así y separados al menos en decimal que se entiende mejor como muestra justo abajo. 144 132 128 136 132 192 ¿Existe alguna forma posible que muestre bien la trama completa? Dejo el código de ejemplo en Visual C#: Código:
namespace Probando_tramas_para_el_SAI_UPS_01___.NET_6._0 Saludos. |
Porque no conviertes a bytes el string,
Por ejemplo Código PHP:
Código:
./str2byte.exe |
Buenas.
Funciona tu código. Me di cuenta que esos caracteres no hay que hacerles caso, debo recoger los datos tal cual como vienen en el puerto serie. Por ejemplo he hecho el de string, hexadecimal y binario como puedes ver aquí abajo. Cita:
![]() Marqué en rojo en la captura de arriba exactamente los seis bytes que quiero, luego tengo que guardarlos ya en un array, matriz o como quiera para luego mostrar en su label correspondiente el resultado. Código que he hecho con string, hexadecimal y binario con Windows Form. Código:
private void Actualizar(object sender, EventArgs e) Espero que así de entrada no tenga que trabajar usando codificaciones ni nada. Han hecho el error para mi, trabajar con distintos tipos de datos en una misma trama. ¿Se puede hacer lo que quiero? Saludos. |
Ya veo cual es tu problema, pero si seleccionas la codificación adecuada, no deberías tener problemas con manejar los dos casos al mismo tiempo.
Código PHP:
Código:
$ ./tser.exe ![]() |
Me dice: El índice esta fuera de los límites de la matriz.
![]() Ver imagen. Al menos en la matriz internamente parece que funciona. |
Funciona.
Código:
uint[] numeros = new uint[6]; |
La franja horaria es GMT +2. Ahora son las 22:30:21. |
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