12.2.6 Программы-перекодировщики кодовых страниц
12.2.6 Программы-перекодировщики кодовых страниц
Как известно, для представления символов русского алфавита существует несколько альтернативных кодировок или кодовых страниц.
В Unix-системах наиболее распространенной является кодировка KOI8-R, Microsoft использует CP-1251 или CP-866 (DOS). Существуют еще ISO8859-5, UTF, Unicode (подробнее о кодировках можно прочитать в разд. 9.3).
Если вы встретили файл, содержимое которого "не читается", то вам потребуется программа перекодировки. Как говорится в RU.LINUX.FAQ: "Перекодировщиков CP1251 и CP866 -› KOI8-R просто огромное количество. Не надо писать новых;-). Наиболее широко распространены iconv (входит в поставку glibc) и GNU recode."
Программа iconv запускается следующим образом:
[user]$ iconv -f866 -tKOI8-R -o ‹outfile› infile
Если не указать выходной файл (опция -o), то результат будет выдаваться на экран (используя фильтры more или less можно удобно просмотреть файл). Чтобы получить список всех возможных кодировок (а он огромен!), дайте команду iconv -list, а для получения помощи: iconv -? или iconv -usage. Между прочим, man-страница не выдается. Впрочем, других опций все равно очень немного: только -verbose (сообщать дополнительные сведения), -V, и -version (обе опции служат для вывода версии программы).
Программу recode можно найти на http://www.iro.umontreal.ca/~pinard/recode/.
Запускается она примерно так:
[user]$ recode CP1251..KOI8-R winfile.txt
Кроме упомянутых команд вы можете воспользоваться программой "Russian Anywhere", которая существует как в версии для Windows (где я с ней и познакомился), так и в версии для командной строки Linux (создатели обещают выпустить и графическую оболочку). Эту программу можно скачать (как в исходных кодах, так и в виде исполняемого модуля) с сайта разработчика http://www.livotov.org/software/.
Исполняемый модуль программы имеет название re. Его лучше поместить в один из каталогов, указанных в переменной PATH.
Программа вызывается из командной строки. Для того, чтобы перекодировать какой-то файл, который "не читается", в кодировку KOI8-R, надо дать команду:
[user]$ re ‹SourceFile› ‹DestFile›? K
где:
• ‹SourceFile› - исходный (нечитаемый) файл;
• ‹DestFile› - перекодированный файл;
• ? - сообщает RE, что кодировка исходного файла не известна и re должна проанализировать файл и самостоятельно определить его кодировку;
• K - задает кодировку для результирующего файла (в данном случае KOI-8).
Если вы знаете кодировку исходного файла, вы можете указать ее вместо символа "?". Например, если вы хотите перекодировать файл letter.txt, который был создан в Windows, и вы знаете, что файл сохранен в кодировке 1251, то надо дать команду:
[user]$ re letter.txt letter-koi.txt W K
После этого, просмотрев файл letter-koi.txt, вы увидите вполне читаемый русский текст в KOI8-R.
Полный формат вызова перекодировщика:
[user]$ re options filename_from filename_to cp_from cp_to [s/d/f] [u/l/s]
где options: [-v][-E|-R|-N][-e|-s]
• -v - выдавать информацию о ходе обработки;
• -n - не выдавать информацию о ходе обработки (задано по умолчанию);
• -E - преобразовывать все символы p, H из русских в английские;
• -R - преобразовывать все символы p, H из английских в русские;
• -N - оставлять все p, H (русские и английские) как в исходном тексте (задано по умолчанию);
• -e - перекодировать все символы 0x80 - 0xFF;
• -s - перекодировать только 64 символа русского алфавита (задано по умолчанию),
а cp_from и cp_to - любой из следующих символов, обозначающих возможные кодировки (по умолчанию - W,K).
Таблица 12.1. Обозначение кодировок в программе re.
Символ Кодировка Символ Кодировка W Windows _ (подчеркивание) _xxe D Dos % %hex K KOI-8 \ 'hex L Latin G Graph_win I Iso ‹ binhex H HEX + +UTF7- S ShiftKbrd C C_MIC M Mac Y Y_c16 A AFF Z Z_c32 O Odd(UTF8_1) F F(UTF8_2) B Base64 P Pict E Express N N_Estl T T-Html V V_Vpp855 U User X X_sp - (тире) uue J J_diffКак уже было сказано, если cp-from="?", то программа пытается самостоятельно определить кодировку исходного файла.
Если у вас по каким-либо причинам не оказалось ни одной из указанных программ-перекодировщиков, то для просмотра содержимого файла можно воспользоваться одним из браузеров Интернет, которые изначально ориентированы на работу с разными кодировками. Например, сгодится обычный lynx:
[user]$ lynx -assume_local_charset cp866 file.txt
Можно также загрузить "нечитаемый" файл в Netscape Navigator, после чего поменять кодировку через меню View / Character Set.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Оптимизация страниц
Оптимизация страниц Модуль Оптимизация страниц
Таблицы страниц
Таблицы страниц Хотя пользовательские программы и работают с виртуальной памятью, которая отображается на физические адреса, процессоры работают непосредственно с этими физическими адресами. Следовательно, когда приложение обращается к адресу виртуальной памяти,
Последовательности страниц и нумерация страниц
Последовательности страниц и нумерация страниц Пока я использовал один и тот же шаблон страницы для всех страниц в рассмотренных нами документах XSL-FO. Если содержимое документа занимает более одной страницы, процессор XSL-FO использует тот же шаблон страницы для всех
Структура страниц и SEO
Структура страниц и SEO Главным новшеством в HTML5 применительно к SEO стало изменение структуры страницы. Прежде для сегментации страницы использовался тег div, причем каждая отдельная часть не несла конкретной смысловой нагрузки. Отныне возможна разбивка страницы на
Защита страниц
Защита страниц С трансляцией адреса связан еще один вопрос — защита памяти. Механизм защиты памяти AS/400 обеспечивает защиту для блоков размером в одну страницу, в отличие от битов тега, защищающих указатели в 16-байтовых блоках памяти. Разница и в том, что теги не
9.2.2 "Сборщик" страниц
9.2.2 "Сборщик" страниц "Сборщик" страниц (page stealer) является процессом, принадлежащим ядру операционной системы и выполняющим выгрузку из памяти тех страниц, которые больше не входят в состав рабочего множества пользовательского процесса. Этот процесс создается ядром во
7.8. Индексация Web-страниц
7.8. Индексация Web-страниц За последние 10 лет Интернет разросся до таких размеров, что найти в нем что-либо без хорошей поисковой системы стало невозможным. Первые системы просто индексировали страницы по их содержимому и потом использовали полученную базу данных для
Сохранение страниц
Сохранение страниц Часто бывает, что вы нашли любопытную страницу, но на ней слишком много полезной информации, а время и деньги утекают, как вода. В этом случае весьма полезно сохранить веб-страницу на жесткий диск, чтобы потом, отключившись от Интернета, спокойно ее
Печать страниц
Печать страниц Распечатать веб-страницу – дело нехитрое, и неважно, сохранили вы ее на диск или просматриваете в подключенном режиме. Чтобы отправить веб-страницу на печать, можно воспользоваться либо кнопкой Печать на панели инструментов, либо командой Файл/Печать. При
Нумерация страниц
Нумерация страниц Если документ состоит более чем из двух страниц, перед распечаткой желательно пронумеровать страницы. Таким образом в нем будет гораздо легче ориентироваться. Для некоторых типов документов, например научных работ, нумерация является
Каталоги веб-страниц
Каталоги веб-страниц Поисковые каталоги напоминают систематические каталоги обычных библиотек. Каталоги – это электронные справочники, в которых собраны списки адресов интернет-страниц, сгруппированные по определенным признакам, чаще всего – по тематике. Обычно
16.3. Просмотр веб-страниц
16.3. Просмотр веб-страниц 16.3.1. Ссылки Итак, вы ввели адрес любого сайта в адресную строку браузера и нажали Enter. Если не знаете, что ввести, введите www.dkws.org.ua— этим вы не только увеличите посещаемость моего сайта, но и узнаете много интересного об операционных системах.Что
16.3.4. Сохранение страниц
16.3.4. Сохранение страниц Если страница понравилась и вы хотите ее сохранить на диске, то выполните команду Файл, Сохранить. При сохранении (рис. 207) выберите тип файла Веб-архив — вся веб-страница (текст и картинки) будет сохранена в одном файле с расширением. mht. Это очень
Просмотр веб-страниц
Просмотр веб-страниц Один из самых популярных сегодня сервисов Интернета – World Wide Web (WWW). Эта часть Интернета стала настолько популярной, что многие пользователи ошибочно отождествляют Всемирную сеть и Интернет.Что же так привлекает пользователей в World Wide Web?Всемирная
Нумерация страниц
Нумерация страниц Для нумерации страниц вам нет необходимости вручную проставлять номера на каждой из них, поскольку Word справится с этой задачей намного эффективнее и избавит вас от множества проблем. Чтобы вставить номера страниц, выполните команду Вставка ?