Как распознать кракозябры?

    В комментариях к предыдущему посту про иероглифы сказали, что хорошо бы иметь такую же блок-схему для кракозябр.

    Итак, вуаля!


    За источник информации была взята статья из вики. В блок-схеме «UTF-16 → CP 866» означает, что исходная кодировка была «UTF-16», а распозналась она как «CP 866».

    Как всегда — кликабельно. Исходник в .docx: здесь.
    Метки:
    Поделиться публикацией
    Комментарии 62
    • +73
      Исходник в .docx: здесь.

      image

      :)
      • +8
        Забавно, что даже между разными *nix нет договоренности по поводу кодировки русских букв в zip:

        • +2
          Это скорее проблема реализации разных стандартов zip. Полноценная поддержка Unicode появилась там где-то с версии 6.1
          • +12
            Zip-архивы такого вида правильно распаковывает виндовый 7z, запущенный под wine. Не спрашивайте, как я это узнал.
            • +1
              PeaZip
              • 0
                kde-шный Ark тоже без проблемм работает с такими архивами;)
              • +3
                local/unzip-natspec 6.0-1
                Unpacks .zip archives with non-latin filenames, using libnatspec patch from AltLinux.
                • НЛО прилетело и опубликовало эту надпись здесь
              • 0
                Если это скриншот из Ubuntu, можно подключить PPA с пропатченными пакетами.
                • 0
                  Да, это Ubuntu, и про решение я знаю. Ставил систему недавно (на днях), в связи с уходящим на покой жёстким диском, так что полностью еще не настроил. Просто совпало так — открыл ссылку, и тут имя файла прямо в тему :)
              • +26
                Может кто не знает, оставлю ссылку на декодер от Лебедева.
              • +1
                Или просто www.artlebedev.ru/tools/decoder/ :)
                • +18
                  Теперь буду обновлять…
                  • 0
                    Кстати, недавно обнаружил в нем неприятную особенность. Когда прогонял через него html-страницы, то заметил, что он к ним добавляет свои секции скриптов и разметки. Был неприятно удивлен.
                    • 0
                      Ну, есть аналоги, тысячи их
                      • +2
                        Ага. Вот, например, некий Petko Yotov из Франции сделал аналог (для кириллицы).
                  • +4
                    Штирлиц вам поможет.
                  • +1
                    В печать и на стену.
                    • +1
                      «Вперемешку P и C» — это UTF-8 -> Win1251
                      • +1
                        Аналогично
                        CP866 -> Win1252 = UTF-8 -> Win1252
                        • 0
                          Да, извиняюсь, ошибся.

                          Спасибо. Fixed.
                        • +10
                          Спасибо. Наказал вас по всей строгости закона (+ в карму, пост, в избранное, даже распечатал схему).

                          П.С. Это был я, тот загадочный пользователь, который написал просьб.
                          • 0
                            �믮������ ����஥��� ������ �஥�� � ࠧ�襭�� ����������ᨬ��⥩ ����� ��ꥪ⠬�…


                            Jenkins рисует такое… когда есть время, пытаюсь найти цепочку кодировок:) пока безуспешно.
                            • 0
                              Это русский текст? Можно прибегнуть к криптоанализу :)
                              • 0
                                Да, русский. Как я понял, что-то из cp866 консоли, перегнанное джавой (куда?) судя по настройкам в UTF-8:)
                              • 0
                                Извините, это не байткод случаем? Тоже пару раз открыл .class файл в текстовом редакторе :)
                                • +1
                                  Нет, это какое-то сообщение на русском из cmd команды для msbuld-а:)
                                  • 0
                                    Просто очень похоже. Открывал классы скомпилированные в текстовом редакторе и такие же крякозябры былию Один в один. :)
                                • 0
                                  Google Translate:
                                  襭 — Carry with the front of a robe
                                • +10
                                  image
                                  • +3
                                    При беглом взгляде кажется, что кодировка на картинке поехала.
                                    • 0
                                      Если присутствуют символы анлийского алфавита, знаки препинания и символ "�", то это Win1251->UTF-8.
                                      • 0
                                        Извините, проблемы с кодировкой) Имелось в виду

                                        это

                                      • +2
                                        Это-то ладно, фигня. Какой-нибудь enconv довольно сносно справляется. Вот когда два раза перекодировано — вот это ребус.
                                        • 0
                                          попробуйте enca
                                          • 0
                                            enca и encov — это одно и то же. enconv это просто алиас для вызова enca с опцией конвертации, без которой он просто определяет кодировку файла.
                                          • 0
                                            может попробовать частотный анализ?
                                          • +4
                                            бНОПНЯ
                                          • +7
                                            меня всерьез начинает бесит ограничение только на один плюс в карму одному и тому же автору
                                            • +1
                                              Труд эпохальный.
                                              • –1
                                                не такой уж эпохальный, в вики есть статья
                                                • –2
                                                  вы минуснули?
                                                • 0
                                                  Бывает, что по каким-то причинам было применено несколько последовательных конверсий. Например, где-то тупой конвертер неправильно распознал входную кодировку и применил свое преобразование. Тогда, чтобы восстановить сообщение, нужно вначале применить преобразование обратное неправильному, а потом правильное.

                                                  А если этих ошибочных преобразований было применено несколько… Тогда диаграмма должна распухнуть экспоненциально по их числу.
                                                  • 0
                                                    На это есть TCode.exe и Shtirlitz.exe
                                                    До трёх перекодировок в разумное время вытягивают. Пять перекодировок уже обычно нереально, потому, что наверняка куча битов посыпалась и восстановить невозможно в принципе.
                                                  • 0
                                                    Нет такого файла или каталога

                                                    Если я правильно понял схему, то это UTF8->Win1252, что, конечно, возможно, но маловероятно :)
                                                  • 0
                                                    ¶g^ЛЅVa6$•§Ј  єКВ`ЊЛе,°тV–еrй­«тЦ є Euд§юдЧT QЬКЌЋЛ^nЯM‰'Ю "‰Ћ –qпј l”{ ЂЮё‹+'JыP©ьЌrбuЄ”еюм°љ»Ў¦Р®ТйЬэ“ЪЧ8!mm К!Ь6„ќn7E.$°љR0ЇЈbс`–Љvb<п«FQ©­’ЏЃxђИDыo©жBЩэ:Љyir2ѕ‘¦ыk l, ћчХ`О¬ ,U_HзџewћЏL°ќH$ Ў†,oB±Е95:i|®R4Bпo8‹ћ)O#lЮ)TSХj¶ПBЏNvB|/xhҐг–м&¤$^+›цkhєАК$А“э)uf‰±9RAж“)7 Оqe жг1Ѓѕ<> 2ѓњЉ˜  Ї§#餓jу

                                                    Помогите пожалуйста разобрать, никак не могу. Или это уже не возможно?
                                                    • 0
                                                      похоже, что это бинарник
                                                    • 0
                                                      А как же двойные перекодировки?
                                                      • 0
                                                        Не хватает Win-1251 → UTF-8. Сегодня столкнулся с такой проблемой.

                                                        Русские символы отображаются всегда так: ����� ��� ����� �� �������
                                                        • 0
                                                          Википи**ры удалили статью «Кракозябры» в Wikipedia.

                                                          Столкнулся с неверными кодировками в своём проекте, хотел по быстрому взглянуть в чём проблема (была там удобнейшая таблица)… А теперь шиш… пичалька…
                                                          • 0
                                                            Автор, пожалуйста, перевыложите картинку с кодировками!

                                                          Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.