Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/01/2011, 17:41
Avatar de hieloverde
hieloverde
 
Fecha de Ingreso: julio-2005
Ubicación: México, D.F
Mensajes: 467
Antigüedad: 18 años, 9 meses
Puntos: 5
Convertir caracteres en hexadecimal

Hola,

Tengo la siguiente situación, estoy creando una pequeña aplicación en VC# para convertir cadenas de caracteres en hexadecimal de 1 byte, es decir de 00 a FF. El reto aquí es que si tengo por ejemplo el carácter „ cuyo equivalente hexadecimal es 201E yo necesito “reducir” eso para obtener 84 hexadecimal.

Otros caracteres son estos (no siguen ningún orden):


= 2014 (debe dar 97)
= 2022 (debe dar 95)
= 203A (debe dar 9B)
= 2020 (debe dar 86)
= 2021 (debe dar 87)
= 2019 (debe dar 82)
Š = 160 (debe dar 8A)
ƒ = 192 (debe dar 83)

He visto algunas aplicaciones (para cagar memorias) que hacen esto, es decir, si ingreso cualquier carácter lo pasa a equivalente hexadecimal sin rebasar de FF. Lo que no logro comprender es que operación puede ejecutarse para convertir 201E a 84, la verdad no le veo sentido, pero lo hacen!

Se que podría, por ejemplo, ejecutar un simple switch y como casos agregar las equivalencias, pero que pasa si se ingresa un carácter que yo no haya contemplado... pues fallaría. Por eso me gustaría mas que nada saber si con alguna operación puede solventarse.

Pueden ver la tabla con caracteres del tipo que menciono en la siguiente tabla:

http://jrgraphix.net/r/Unicode/2000-206F

Alguna idea?, al menos será posible?

Gracias.
__________________
<? echo("1 <script> dice + que 1000 palabras"); ?> EspacioMéxico