Conversion de Ascii a Hexadecimal

Iniciado por xoftfox, 8 Mayo 2012, 04:36 AM

0 Miembros y 1 Visitante están viendo este tema.

xoftfox

Buenas con todos... !!!

Estoy en la elaboracion de un programa con interface grafica que me permita convertir ASCII a HEX.
El problema es que no encuentro la manera, ya he intentado varias cosas y no he logrado resolverlo.

Esta es la parte del codigo en la que me gustaria q me ayuden

String ^cadena=this->TextBox1->Text;
String ^cadena_convertida;
for (int i=0; i<cadena->Length; i++){
cadena_convertida+ = ----- Metodo para convertir a HEX ------(cadena[i]); //supongo que primero
                                                                                 //debo converir cadena
                                                                                  //a entero
}
this->TextxBox2->Text=cadena_convertida;


Como veran solo debo trabajar con Strings NO con el tipo char...

Gracias por la ayuda q puedan darme  :)

avesudra

Cada carácter en ascii equivale a un valor en entero por lo tanto lo que tienes que convertir a hexadecimal son esos valores por ejemplo la cadena "hola"
-Tenemos la h que en entero es 104 y en hexadecimal 68.
-Tenemos la o que en entero es 111 y en hexadecimal 6F.
-Tenemos la l  que en entero es 108 y en hexadecimal 6C.
-Tenemos la a que en entero es 97   y en hexadecimal 61.

Por lo tanto la cadena es 68 6F 6C 61 , entonces lo que tienes que hacer es tomar cada carácter , pasarlo a entero , obtener de dicho entero su valor hexadecimal , ponerlo en la cadena convertida y imprimirla.Con la clase string tienes utilidades para tomar ese valor entero como la función miembro at(size_t pos) que recibe como parámetro una posición y te devuelve el carácter en esa posición así que con ese caracter devuelto trabajas.
Te dejo la referencia de la clase string :
http://www.cplusplus.com/reference/string/string/
y la Tabla ascii :
http://www.asciitable.com/

¡Un saludo! :)
Regístrate en