Pull to refresh

Comments 65

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

Это скорее проблема реализации разных стандартов zip. Полноценная поддержка Unicode появилась там где-то с версии 6.1
Zip-архивы такого вида правильно распаковывает виндовый 7z, запущенный под wine. Не спрашивайте, как я это узнал.
kde-шный Ark тоже без проблемм работает с такими архивами;)
far2l это умеет. Это потребовало некоторых усилий, но да, у нас получилось. В хабростатье по ссылке есть подробности.
Виндовый 7z, запущенный под wine, делает очень простую штуку — выбирает OEM-кодировку для архива по системной локали. Но для этого не нужен целый вайн. Вот табличка, вытащенная прямо из его исходников:
github.com/unxed/oemcp/blob/master/oemcp.txt
А вот скрипт, показывающий, как правильно пользоваться этой табличкой, если вы — автор [раз]архиватора:
github.com/unxed/oemcp/blob/master/ziplist
А вот патчик к p7zip, реализующий эту логику, который не хотят принимать в Дебиан пока, увы:
bugs.debian.org/cgi-bin/bugreport.cgi?bug=965126
А вот .deb с p7zip, собранным с этим патчиком, для тех, кто задолбался ждать, пока его примут в Дебиан (amd64):
github.com/unxed/oemcp/blob/master/p7zip-oemcp.deb

продублирую здесь, авось кому поможет.

погуглил таки. добавили в 2006 году
https://pkwaredownloads.blob.core.windows.net/pkware-general/Documentation/APPNOTE-6.3.0.TXT

If general purpose bit 11 is unset, the file name and comment should conform to the original ZIP character encoding. If general purpose bit 11 is set, the filename and comment must support The Unicode Standard, Version 4.1.0 or greater using the character encoding form defined by the UTF-8 storage specification. The Unicode Standard is published by the The Unicode Consortium (www.unicode.org). UTF-8 encoded data stored within ZIP files is expected to not include a byte order mark (BOM).

и оказывается что кодировка должна быть cp437, но в действительности бралась та что имелась, уп-с…

Versions of the format prior to 6.3.0 did not support storing file names in Unicode. According to the standard, file names should be stored in the CP437 encoding, which is standard for the IBM PC, but in practice, DOS archivers used the system’s installed character encoding.

local/unzip-natspec 6.0-1
Unpacks .zip archives with non-latin filenames, using libnatspec patch from AltLinux.
UFO landed and left these words here
Да, это Ubuntu, и про решение я знаю. Ставил систему недавно (на днях), в связи с уходящим на покой жёстким диском, так что полностью еще не настроил. Просто совпало так — открыл ссылку, и тут имя файла прямо в тему :)
Теперь буду обновлять…
Кстати, недавно обнаружил в нем неприятную особенность. Когда прогонял через него html-страницы, то заметил, что он к ним добавляет свои секции скриптов и разметки. Был неприятно удивлен.
Ну, есть аналоги, тысячи их
Ага. Вот, например, некий Petko Yotov из Франции сделал аналог (для кириллицы).
Аналогично
CP866 -> Win1252 = UTF-8 -> Win1252
Да, извиняюсь, ошибся.

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

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


Jenkins рисует такое… когда есть время, пытаюсь найти цепочку кодировок:) пока безуспешно.
Это русский текст? Можно прибегнуть к криптоанализу :)
Да, русский. Как я понял, что-то из cp866 консоли, перегнанное джавой (куда?) судя по настройкам в UTF-8:)
Извините, это не байткод случаем? Тоже пару раз открыл .class файл в текстовом редакторе :)
Нет, это какое-то сообщение на русском из cmd команды для msbuld-а:)
Просто очень похоже. Открывал классы скомпилированные в текстовом редакторе и такие же крякозябры былию Один в один. :)
Google Translate:
襭 — Carry with the front of a robe
UFO landed and left these words here
UFO landed and left these words here
UFO landed and left these words here
Это-то ладно, фигня. Какой-нибудь enconv довольно сносно справляется. Вот когда два раза перекодировано — вот это ребус.
enca и encov — это одно и то же. enconv это просто алиас для вызова enca с опцией конвертации, без которой он просто определяет кодировку файла.
может попробовать частотный анализ?
меня всерьез начинает бесит ограничение только на один плюс в карму одному и тому же автору
не такой уж эпохальный, в вики есть статья
Бывает, что по каким-то причинам было применено несколько последовательных конверсий. Например, где-то тупой конвертер неправильно распознал входную кодировку и применил свое преобразование. Тогда, чтобы восстановить сообщение, нужно вначале применить преобразование обратное неправильному, а потом правильное.

А если этих ошибочных преобразований было применено несколько… Тогда диаграмма должна распухнуть экспоненциально по их числу.
На это есть TCode.exe и Shtirlitz.exe
До трёх перекодировок в разумное время вытягивают. Пять перекодировок уже обычно нереально, потому, что наверняка куча битов посыпалась и восстановить невозможно в принципе.
UFO landed and left these words here
¶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у

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

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

Столкнулся с неверными кодировками в своём проекте, хотел по быстрому взглянуть в чём проблема (была там удобнейшая таблица)… А теперь шиш… пичалька…
Автор, пожалуйста, перевыложите картинку с кодировками!
Вы про *.zip архив или про саму картинку в статье?
Про саму картинку и исходник
Исходника, к сожалению, нет, а картинка вот:
image
Черт, забыл про вэбархив. Выципил ее из этого топика (просто сохранил страницу), т.к. она у меня почему-то отображается.
Да, с самом посте у меня тоже есть картинка. habrastorage ее не потерял.
Sign up to leave a comment.

Articles