распознавание кодировки

Russian main discussion
Post Reply
  • Author
  • Message
ker
Offline
Posts: 7
Joined: Thu Mar 29, 2012 4:32 am

распознавание кодировки

Post by ker »

У меня такой вопрос возник, а можно ли распознавание кодировки сделать более универсальным, например кириллицу и европейскую в одно объединить? Сильно ли точность пострадает?

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

ker
Распознавание кодировки как раз основано на разделении языков, их объединение идет вразрез с самим принципом распознавания.

ker
Offline
Posts: 7
Joined: Thu Mar 29, 2012 4:32 am

Post by ker »

вот как.. спасибо за разъяснение, у меня просто стоит еще просмотрщик veiw64, я им как то открыл текст один, смотрю а он там кодировку определил как 1252 western, и это помогло понять почему иногда в некоторых файлах корякозябры возникают. Что то видать у него там хитрое написано тогда :)

Offline
Posts: 9
Joined: Fri Jun 08, 2012 12:38 pm

Post by guest13 »

..
Last edited by guest13 on Wed May 28, 2014 1:20 am, edited 1 time in total.

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

guest13
Т.е., если вопрос вами сформулирован верно, то, набрав сейчас текст в этом файле на русском и сохранив в UTF-8, то получим непонятные символы?

Или вы всетаки имели ввиду: "у меня были русские символы, кто-то что-то сделал, на выходе получились непонятные символы и теперь не знаю как вернуть обратно"?

Offline
Posts: 9
Joined: Fri Jun 08, 2012 12:38 pm

Post by guest13 »

..
Last edited by guest13 on Wed May 28, 2014 1:22 am, edited 1 time in total.

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

guest13
Вы можете выложить или выслать этот файл?

Offline
Posts: 9
Joined: Fri Jun 08, 2012 12:38 pm

Post by guest13 »

..
Last edited by guest13 on Wed May 28, 2014 1:22 am, edited 1 time in total.

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

guest13
Никаких сложностей с сохранением в файл не вижу. Открыл как UTF-8, набрал русский текст среди каракуль, сохранил, переоткрыл, набранный русский текст отображается нормально.

Offline
Posts: 9
Joined: Fri Jun 08, 2012 12:38 pm

Post by guest13 »

..
Last edited by guest13 on Wed May 28, 2014 1:23 am, edited 1 time in total.

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

guest13
Даже, если тот кто так "закодировал" впомнит последовательность перекодировок, нельзя быть уверенным, что обратное перекодирование поможет, т.к. часто выбранное направление перекодирования необратимо.

DV
Offline
Posts: 1250
Joined: Thu Nov 16, 2006 11:53 am
Location: Kyiv, Ukraine

Post by DV »

Информация к размышлению:
https://pypi.python.org/pypi/chardet
https://github.com/batterseapower/libcharsetdetect
Сразу подумалось, что это ж можно к AkelPad крутой плагин по распознаванию кодировок сделать :)

DV
Offline
Posts: 1250
Joined: Thu Nov 16, 2006 11:53 am
Location: Kyiv, Ukraine

Post by DV »

DV,
Однако же, практическое использование показало, что не всё так лучезарно. Сам подход, конечно, весьма и весьма интересен, однако на элементарном файле с кириллицей cp1251 этот алгоритм почему-то выдал в результате кодировку MacCyrillic - причём с каждой новой строкой перевес в сторону MacCyrillic был всё больше. И, что самое обидное, "споткнулось" определение кодировки на первых (заглавных) буквах предложений, по какой-то причине посчитав их чем-то вроде кавычек из MacCyrillic. То есть "весовые" таблицы символов всё-таки не совершенны.

Offline
Posts: 2247
Joined: Tue Aug 07, 2007 2:03 pm
Location: Vinnitsa, Ukraine

Post by FeyFre »

DV, там написано что кириллица только Болгарский.
Весовые таблицы символов помогают определять язык, а не собственно кодировку. Да и работают на текстах по больше. Да и построить таблицу которая хорошо бы работала - дилетантам которые занимались указанной либой не под силу. Уж очень прикладное направление и нужно привлекать действительно специалистов.

Offline
Posts: 71
Joined: Tue Nov 11, 2014 12:21 am

Post by Scrapmetay »

Такой вопрос: почему в General → Codepage recognition выбирается только одна кодировка?

Если файл не с ней, то алгоритм ведь должен распознавать какая ближе всего. Я так понимаю, такой список, как там, мог бы указать к каким склоняться, по приоритетам? Ведь склоняться можно не только к одной....

А у меня получается так, что он эту выбранную только и устанавливает. А собственно распознавать не берётся.
Post Reply