Нужна помощь в декодировании UNICODE

Тема в разделе "Закажу проект", создана пользователем DS2015, 18 дек 2018.

  1. DS2015

    DS2015 Нерд

    На входе есть строка такого вида: String art = "\u0410\u043b\u043b\u0430 \u041f\u0443\u0433\u0430\u0447\u0435\u0432\u0430";
    Нужна подпрограмма конвертирования из юникода. Вроде как нашёл тут cyberforum.ru/cpp-beginners/thread2119522.html, но что-то не могу прикрутить.
    Хочется иметь для вывода на TFT функцию, позволяющую реализовать декодирование влёт, по типу
    tft.print( unicode2rus(art) );
    Готов оплатить Ваш код....
    P.S. TFT русифицирован по примеру
    arduino.ru/forum/programmirovanie/rusifikatsiya-biblioteki-adafruit-gfx-i-vyvod-russkikh-bukv-na-displei-v-kodi
     
  2. Green

    Green Гик

    Ну а utf8rus это разве не делает?
     
  3. DS2015

    DS2015 Нерд

    Надо поизучать... Но как мне видится, Юникод это скорее UTF16, он же двухбайтовый, нежели UTF8...
     
  4. Green

    Green Гик

    Во, во. Поизучайте. Но с вас пиво за сэкономленные деньги.)
     
    DS2015 нравится это.
  5. DIYMan

    DIYMan Guest

    UTF-8 - тоже входит в юникод, это стандарт кодировки с переменным кол-вом байт на символ, до 6 байт на символ.
     
    Andrey12 нравится это.
  6. Юникод это набор символов. UTF-8 и -16 это кодировки, работающие с этим набором. В примере UTF-16.
     
  7. Green

    Green Гик

    В примере Алла Пугачёва в UTF-8.
     
  8. DIYMan

    DIYMan Guest

    Суровый дядя витя - сделал вывод, как всегда пальцем в ж. А я вот скажу - что в примере UTF-8, и тоже буду прав, отчасти. Нельзя по таким входящим данным определить кодировку ОДНОЗНАЧНО, вот в чём правда жизни.

    Но дяде вите - можно всё.
     
    ostrov и Andrey12 нравится это.
  9. Не только дяде Вите. Достаточно не быть балаболом, ничего не знающим, но высокоумно рассуждающим, а просто декодировать.
    https://www.browserling.com/tools/utf16-decode
    https://www.browserling.com/tools/utf8-decode
    Вот попробуйте, какой из них сработает.
     
  10. DIYMan

    DIYMan Guest

    Достаточно быть дядей витей, чтобы постоянно нести херню, потом брать тупые конвертеры, и выдавать это за истину в последней инстанции :)

    Витюня, попробуй здесь: http://www.online-decoder.com/ru - тоже вариант, не? Или твои ссылки более кошерные, что ли? По моей ссылке - UTF-8. Но тебе, упоротому, не понять того простого факта, о котором я говорил: по ПРИВЕДЁННОМУ выше входному набору символов НЕЛЬЗЯ ОДНОЗНАЧНО определить кодировку, ферштейн? И ответы UTF-8 и UTF-16 - верны оба, хотя бы потому, что UTF-16 - это подмножество UTF-8.

    З.Ы. Вангую, щас будет очередной высер витюни в желании удержать штаны на месте :)
     
    ostrov и Andrey12 нравится это.
  11. Ну да. Только на выходе, а не на входе.

    Вот так новости.

    Вот так проекция.
     
  12. parovoZZ

    parovoZZ Гуру

    Так что никакое это не подмножество.
     
  13. kino

    kino Нерд

    О боги, да отнимите вы от исходного числа 0x0410 да прибавьте 0xC0. Вот и все декодирование.
     
  14. DIYMan

    DIYMan Guest

    Согласен, неправильно выразился. Диапазон одинаков.
     
  15. DS2015

    DS2015 Нерд

    Поизучал.... Куда отправить пиво (денежку) за сэкономленное время? Тема, вижу, получила горячее обсуждение с переходом на личности... :) Друзья, не будем кровожадными! Всем спасибо за принятое участие! :)
     
  16. parovoZZ

    parovoZZ Гуру

    а зачем тогда нападать? Тут дядя Витя прав
     
  17. DIYMan

    DIYMan Guest

    Нет, витюня неправ. Ещё раз: по предоставленному куску текста кодировку не определить.
     
  18. parovoZZ

    parovoZZ Гуру

    Не определить, но в остальном прав.
     
  19. DIYMan

    DIYMan Guest

    Ну так я о чём: витюня в очередной раз безапелляционно заявил, что UTF-16, и баста. Я заострился только на это, собственно. Посмотри внимательно, что я цитировал и о чём писал, пж. Сообщение номер 8.
     
  20. vvr

    vvr Инженерище

    бляя...., и нафига из-за кодировок сраться)))))