Хотя это, вероятно, сработает, было бы более надежно использовать определенную кодировку, поскольку программа обменивается данными с внешним устройством.

есть способ закодировать расширенные значения ascii (128-255) в их однобайтовые значения, как показано здесь:http://asciitable.com/

Я пытался использовать Encoding.UTF8.GetBytes (), но это возвращает многобайтовые значения для расширенных кодов. Мне не нужно ничего, кроме 255, но было бы неплохо хотя бы поддержать их. Я пытаюсь отправить текстовые данные на работающую и светодиодную матрицу Arduino и хочу обрабатывать буквы с акцентом, не имея дело с многобайтовыми символами.

РЕДАКТИРОВАТЬ: Чтобы уточнить, светодиодная матрица не имеет конкретной кодовой страницы. Это в основном то, что я говорю. Там нет встроенной поддержки текста в этом или Arduino. Это просто тупой дисплей 128х8 пикселей, и контроллер вручную рисует текст попиксельно. Поэтому я на самом деле предоставляю ему шрифт (в виде байтового массива в заголовочном файле) и могу сделать любой код символа соответствующим любому выводу, который я хочу ... так, какая кодовая страница на самом деле не является проблемой, кроме который даст мне полные 8-битные символы.

 Adam Haile07 янв. 2011 г., 09:19
Да ... у меня работает Unix Timestamp ... просто вручную создал байтовый массив, тогда как прежде, чем я строил строку, которая затем получалась с помощью Encoding.ASCII.GetBytes () ... Итак, теперь мне просто нужно получить расширенный ASCII, работающий для отправки текста на дисплей, а не необработанные данные, такие как временные метки.

Ответы на вопрос(3)

которую использует светодиодная матрица. Он должен быть стандартным, как 1252, кодовая страница Windows для Западной Европы и Америки.

        var bytes = Encoding.GetEncoding(1252).GetBytes("Åãrdvárk");
Решение Вопроса

Encoding конструктор. Если то, что вы связали, является правильной «расширенной таблицей ASCII», это будет437.

Но кодировка IBM437 необычна вне DOS-программ и консольных приложений Windows. В противном случае стандартная кодировка для западноевропейских языковISO-8859-1 (Кодовая страница Windows 28591) илиокна-1252.

Default кодировка должна справиться с этим. Или используйте кодовую страницу / кодировку ANSI.

 Guffa07 янв. 2011 г., 09:26
Хотя это, вероятно, сработает, было бы более надежно использовать определенную кодировку, поскольку программа обменивается данными с внешним устройством.

Ваш ответ на вопрос