aquí está el problema:Cómo convertir un carácter Unicode a su equivalente ASCII
En C# que estoy recibiendo información de una base de datos heredada ACCESO. .NET convierte el contenido de la base de datos (en el caso de este problema, una cadena) en Unicode antes de entregarme el contenido.
¿Cómo convierto esta cadena Unicode a su equivalente ASCII?
Editar
Unicode Char 710 es de hecho ACCENT MODIFICADOR CARTA CIRCUNFLEJO. Aquí está el problema un poco más preciso:
-> (Extended) ASCII character ê (Extended ASCII 136) was inserted in the database. -> Either Access or the reading component in .NET converted this to U+02C6 U+0065 (MODIFIER LETTER CIRCUMFLEX ACCENT + LATIN SMALL LETTER E) -> I need the (Extended) ASCII character 136 back.
Esto es lo que he intentado (ahora veo por qué esto no funciona, ...):
string myInput = Convert.ToString(Convert.ToChar(710));
byte[] asBytes = Encoding.ASCII.GetBytes(myInput);
Pero esto no da lugar a 94 pero un byte con valor de 63 ...
Aquí es un nuevo intento, pero aún así no funciona:
byte[] bytes = Encoding.ASCII.GetBytes("ê");
Soltution
Gracias a ambos csgero y bzlm para que apunta en la dirección correcta que resuelven el problema here.
El término "ASCII extendido" es confuso. Si sus datos de entrada son realmente ASCII, entonces no hay "o un" número de carácter 136 ". Es más probable que sus datos contengan caracteres no representables por ASCII, como datos internacionales representables por codificaciones heredadas de 8 bits como Windows-1252. – bzlm
Lo sé, hay todo un artículo de Wikipedia sobre el tema. – Huppie
Debe publicar la solución como una respuesta y no en la pregunta para que podamos votar por ella. –