Вот проблема:
В C # я получаю информацию из устаревшей базы данных ACCESS. .NET преобразует содержимое базы данных (в случае этой проблемы в строку) в Unicode, прежде чем передать содержимое мне.
Как мне преобразовать эту строку Unicode обратно в ее эквивалент ASCII?
Редактировать
Unicode char 710 действительно является модификатором CIRCUMFLEX ACCENT. Вот проблема немного более точная:
-> (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.
Вот что я попробовал (теперь я понимаю, почему это не сработало ...):
string myInput = Convert.ToString(Convert.ToChar(710));
byte[] asBytes = Encoding.ASCII.GetBytes(myInput);
Но в результате получается не 94, а байт со значением 63 ...
Вот новая попытка, но она все еще не работает:
byte[] bytes = Encoding.ASCII.GetBytes("ê");
Soltution
Благодаря
csgero и
bzlm за указание в правильном направлении я решил проблему
здесь .