2008/12/11 Dmitry Arsentiev <[EMAIL PROTECTED]>: > Столкнулся с похожей задачей: дан входной файл > в неизвестной кириллической кодировке, надо скриптом определить, > что это за кодировка такая. > > Мои требования: > модуль должен устанавливается простым копированием *.pm файов > и понимать DOS (CP866) и windows (CP1251) кодировки. > > Нашёл в сети (к сожалению, не на CPAN) модуль, эту задачу решающий. > http://home.mts-nn.ru/~gosha/perl-scripts/Cyrillic/Read_me.txt > http://home.mts-nn.ru/~gosha/perl-scripts/index.html#Cyrillic > Автор - Игорь Окунев. > > > На CPAN тоже нашёл пару модулей (не считая модуль Андрея Шитова, > который (модуль, а не Андрей) решает немного другую задачу, или я не > до конца понял). > > Вот они, эти модули: > > 1) Lingua::DetectCyrillic (автор - Алексей Руденко) > http://search.cpan.org/~rudenko/Lingua-DetectCyrillic-0.02/DetectCyrillic.pm#item_Unicode%3A%3AMap8 > > Всё отлично, только модуль зависит от других двух, которые, > чтобы поставить, надо компилировать. Пришлось отказаться. > > 2) Lingua::DetectCharset.pm (author - John Neystadt ) > http://search.cpan.org/~jneystadt/cyrillic-1.05/Lingua/DetectCharset.pm > Не поддерживает определение DOS-кодировки.
Если посмотреть на http://search.cpan.org/src/JNEYSTADT/cyrillic-1.05/Lingua/DetectCharset/StatKoi.pm http://search.cpan.org/src/JNEYSTADT/cyrillic-1.05/Lingua/DetectCharset/StatWin.pm то можно догадаться, что StatDos.pm сделать довольно просто самостоятельно при помощи iconv. -- > > > PS Вот здесь есть могущие быть полезными ссылки > http://www.opennet.ru/prog/info/2062.shtml > > > > > 4 июня 2008 г. 12:08 пользователь Ruslan Zakirov > <[EMAIL PROTECTED]> написал: >> Есть всем известный детектор в mozilla based браузерах. Про него есть >> пару статей: >> * http://www.mozilla.org/projects/intl/UniversalCharsetDetection.html >> - теория и анализ эффективности >> * http://www.mozilla.org/projects/intl/ChardetInterface.htm - краткое >> описание библиотеки >> >> Порты: >> * java - http://www.chatnsearch.com/chardet.html >> * python - http://chardet.feedparser.org/ >> * perl - ??? >> >> Для перла нет, но можно портировать, есть примеры на нескольких языках. >> >> 2008/6/3 Павел Тимонин <[EMAIL PROTECTED]>: >>> Товарищи, как мне определить кодировку входящего файла? Я получаю его как >>> параметр в POST-запросе, и не знаю заранее в какой он кодировке. Программа >>> работает в utf8. >>> >>> я знаю про use Encode, и знаю как из любой кодировки сделать utf8, но не >>> знаю как определить :) копания в самом Encode не помогли моему пониманию. >>> хотел проверить функцию getEncoding, но она не работает. компилятор ругается >>> что ему не хватает Encoding::Alias, хотя он на месте. я его подключал (хотя >>> в Encode.pm в этой функции он подключается через require), всё равно не >>> работает. >>> >>> -- >>> Moscow.pm mailing list >>> [email protected] | http://moscow.pm.org >>> >>> >> >> >> >> -- >> Best regards, Ruslan. >> -- >> Moscow.pm mailing list >> [email protected] | http://moscow.pm.org >> > -- > Moscow.pm mailing list > [email protected] | http://moscow.pm.org > -- С уважением, А.Н.Шатловский -- Moscow.pm mailing list [email protected] | http://moscow.pm.org
