|
|
| Кодирование почтовых сообщений |
|
Необходимость в кодировании возникает в случаях передачи нетекстовых файлов с помощью электронной
почты. В результате кодирования такие файлы помещаются в транспортный контейнер, который и передается
затем в составе сообщения электронной почты.
 |
Содержание
- Зачем надо
кодировать почтовые
сообщения
- Типы кодировок
- Почтовые программы
- Если у вас
стоит версия UUPC 5.X
- Если у вас
стоит версия UUPC 7.0
- Если у вас
стоит Eudora
- Если у вас
стоит Internet Mail
- Как правильно
выбрать кодировку
- Кодирование
больших файлов
- Кодовая
таблица русских символов
- Внешние
программы-кодировщики
|
 |
1.Зачем надо кодировать почтовые сообщения
В соответствии со стандартом
формата почтовых сообщений в
письме может содержаться
только текстовая информация
(символы стандартного
американского кода ASCII). Это
означает, что недопустимо
наличие в теле письма символов
отличных от графических (т.е.
символов букв, знаков
препинания, цифр и т.п.).
Если текст создан в редакторах
DOS (Norton Editor, PE, Multi Edit, Lexicon (без
использования спец. шрифтов),
то его можно непосрественно
вставить в тело письма. При
переписке с западными
абонентами на английском языке
проблем обычно не возникает. А
вот послать текст по русски на
запад, вам вероятнее всего не
удасться. Или письмо дойдет в
нечитабельном виде, или
вернется с сообщением об
ошибке. В этом случае применяют
кодирование. Другой случай,
когда необходимо кодировать
отправляемые сообщения - если
надо передать файл в формате
WORD, EXEL, графический файл (JPG, GIF,
BMP ...) программу (EXE, COM), архив (ARJ,
ZIP, RAR) то в этом случае
передаваемый файл перед
вставкой в письмо необходимо
преобразовать в текстовую
форму. Эта операция
производится или при помощи
имеющихся средств в самой
почтовой программе или
внешними программами.
Кодирование сообщений
производится также в случае
использования национальных
алфавитов (или набора кодов
символов), отличных от
английского. Например если Вы
пишете сообщение на русском
языке, то фактически
используется восьмибитная
кодировка. Далеко не всегда эти
сообщения достигают адресата в
исходном виде. Однако на
территории бывшего СНГ с
абонентами сети РЕЛКОМ вы
можете переписываться на
русском языке без проблем не
используя кодирования
сообщений.
|
 |
2. Типы кодировок
| UUENCODE/UUDECODE |
устаревшая кодировка,
широко используется на
территории бывшего СНГ. На
западе распростронена
мало. Встроена в программы
BMAIL, DMAIL, Internet Mail, Pegasus Mail.
Пример кодировки в формате
UUENCODE: section 1 of
uuencode 5.10 of file t by R.E.M.
begin 644 t.xls
M1$5624-%/4,Z7%=)3CDU7%-%5%9%4BY%6$4-"D1%5DE#13U#.EQ724XY-5Q(
M24U%32Y365,-"D1/4SU(24=(#0I&24Q%4STQ,#`-"E)%32`@4G5S<VEA;B!S
M971T:6YG<PT*#0H-"F1E=FEC93U#.EQ724XY-5Q#3TU-04Y$7&1I<W!L87DN
M<WES(&-O;CTH96=A+"PQ*0T*0V]U;G1R>3TP,#<L.#8V+$,Z7%=)3CDU7$-/
334U!3D1<8V]U;G1R>2YS>7,-"G,-
`
end
sum -r/size 7722/296
section (from "begin" to
"end")
sum -r/size 17925/199 entire input file
Характерной
отличительной чертой
данного формата является
слово begin и
имя кодированного файла
(после 3-х значного числа).
Примечание:
иногда строки 'section', 'sum'
могут отсутствовать. Дело
в том, что некоторые
интеллектуальные UUENCODE
кодировщики при
кодировании больших
файлов умеют создавать
секционные архивы, с
указанием номера секции и
контрольной суммой.
|
| BASE64 |
кодировка из
стандарта MIME. Самая
распространенная
кодировка. Используется
большинством абонентов на
западе. Встроена во все
современные почтовые
программы например, DMAIL (for
DOS v 2.X), EUDORA, MS Exchаnge, Internet Mail,
Pegasus Mail.
Пример кодировки в формате
BASE64:Content-Type:
text/plain; charset=US-ASCII; name=file.doc
Content-transfer-encoding: base64
CYXhq6ggr+CoIOCgoa7ipSDhIO2rpari4K6tra6pIK+u5+KuqSCi6yCvqOil
4qUgr6jh7KygDQoJraWvruHgpeHioqWtra4goiCvrufirqKuqSCv4K6j4KCs
Имя закодированного файла определено в служебной строке переменной name
|
| QUOTED-PRINTABLE |
кодировка из стандарта
MIME. Встроена во все
современные почтовые
программы например, DMAIL (for
DOS v 2.X), EUDORA, MS Exchаnge, Internet Mail,
Pegasus Mail. Пример кодировки
в формате QUOTED-PRINTABLE:
=85=E1=AB=A8 =AF=E0=A8
=E0=A0=A1=AE=E2=A5 =E1
=ED=AB=A5=AA=E2=E0=AE=AD=AD=
=AE=A9 =AF=AE=E7=E2=AE=A9 =A2=EB
=AF=A8=E8=A5=E2=A5
=AF=A8=E1=EC=AC=A0
Характерной
отличительной чертой
данного формата являются
многочисленные знаки = .
|
| BINHEX |
кодировка, используемая
в MACINTOSH-ах. Встроена в Pegasus
Mail, Eudora.
Пример кодировки в формате
BINHEX:(This file must be converted with BinHex 4.0)
:$feKBh"`F$)Z-#ia,R0TG!"6593K8dP8)3!!!!$4C!!!!!$X$e0*9#%!"!!!d@4
b6'&e!3!!!!!!!!!!!JTYB@0`F(!ZG(Kd"3""-+`!!!!!!!!!!Irr!!B!-`!("(3
|
| RTF |
формат используемый для
переноса документов между
редакторами и
электронными наблицами.
Выбор RTF формата
производится в редакторе
при сохранении или чтении
файла. Файлы в формате RTF
можно передавать по
электронной почте без
каких-либо дополнительных
преобразований. Пример
кодировки в формате RTF:
{\rtf1\ansi
\deff7\deflang1033{\fonttbl{\f4\froman\fcharset204\fprq2
Times New Roman Cyr;}{\f7\fswiss\fcharset0\fprq2
MS Sans Serif;}
{\f19\froman\fcharset0\fprq2 Times New
Roman;}}{\colortbl;\red0\green0\blue0;
\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;
|
Общее
замечание: Для
гарантии доставки не
рекомендуется отправлять
письма большого размера, более
того - некоторые почтовые
системы имеют ограничение на
максимальный размер почтового
сообщения как на чтение, так и
на передачу. Например, в
программе BMAIL нельзя открыть
письмо размер которого
превышает 60-80 кБ, а почтовый
сервер нашей компании не
позволяет принимать и
передавать сообщения
превышающие 1мБ. Для
преодоления ограничений на
размер, посылка большого
сообщения производится в
несколько писем.
|
 |
3. Почтовые программы
| Программа |
Операционная система |
Поддерживаемые
типы кодировок. |
| Bmail |
DOS |
UUENCODE/UUDECODE |
| Dmail v2.04 |
DOS |
UUENCODE/UUDECODE
BASE64
QUOTED_PRINTABLE |
| Minihost |
Windows 3.X/95 |
UUENCODE/UUDECODE
BASE64
QUOTED_PRINTABLE |
| Eudora 1.54, 3.0 |
Windows 3.X/95 |
BASE64
QUOTED_PRINTABLE
BINHEX |
| Pegasus Mail |
Windows 3.X/95 |
UUENCODE/UUDECODE
BASE64
QUOTED_PRINTABLE |
| Internet Mail |
Windows95 |
UUENCODE/UUDECODE
BASE64
QUOTED_PRINTABLE |
| Mozila (Mail agent of Netscape
Navigator) |
Windows 3.X/95 |
BASE64
QUOTED_PRINTABLE
UUENCODE/UUDECODE ( 4.x ) |
|
 |
4.Если у вас стоит версия UUPC 5.XX
С этой версией UUPC нормально
работает только программа BMAIL
v1.36, которая поддерживает
кодировку UUENCODE.
Для посылки письма
с вложенным файлом в формате
UUENCODE необходимо:
- запуcтить BMAIL
- перейти в меню (F9)
- выбрать верхнее меню
ПИСЬМО, подменю НОВОЕ
ПИСЬМО
- перейти в меню (F9)
- выбрать верхнее меню
ВСТАВИТЬ, ВСТАВИТЬ ДАННЫЕ
- ввести или выбрать имя
файла
В тело письма будет помещен
закодированный блок.
Для декодирования
необходимо:
- запуcтить BMAIL
- открыть письмо с
закодированным блоком
данных
- выбрать верхнее меню
ПИСЬМО, подменю ИЗВЛЕЧЬ
ДАННЫЕ
- выйти из BMAIL
В рабочем каталоге
пользователя, имя которого
обычно совпадает с именем
почтового ящика вы найдете
декодированный файл.
Для декодирования
нескольких последовательных
писем письма с UUENCODE вложением 1
файла надо:
- не открывая письем
отметить их клавишей
ПРОБЕЛ, при этом цвет
строки изменится на
красный
- перейти в режим ПИСЬМО
(ALT-M), ИЗВЛЕЧЬ ДАННЫЕ,
клавиша Enter
В текущем рабочем каталоге
появится декодированный файл,
имя которого указано письме
после слова begin.
Для работы c кодировками
отличными от UUENCODE можно:
- использовать внешние
кодировщики (см п.10)
- перейти на UUPC 7 и
использовать в качестве
почтовой программы Dmail v2.04
- перейти на POP3 протокол и
использовать в качестве
почтовой программы Internet Mail
|
 |
5.Если у вас стоит версия UUPC 7.0
В UUPC v7 входят две почтовые
программы - Dmail v2.04 и Bmail v1.36.
Версия Dmail v2.04, поддерживает все
популярные кодировки:
- BASE64
- QUOTED-PRINTABLE
- UUENCODE/UUDECODE
Для посылки письма с
вложенным файлом в формате
UUENCODE при помощи программы Dmail
необходимо:
- запустить программу
- нажав на ESC закрыть рабочий
п/я
- нажать F2, выбрать
ОТПРАВИТЬ АДРЕСАТАМ
- ввести адрес получателя,
тему письма
- клавишей ТАБ перейти на
кнопку ПРИЛОЖЕНИЯ
- нажав на F2 перейти в режим
выбора посылаемого файла,
нажать ENTER
- клавишей ТАБ перейти на
кнопку В КОДИРОВКЕ
- нажав на F2 перейти в режим
выбора кодировки UUENCODE, BASE64,
QUOTED_PRINTABLE
- кнопкой TAB перейти на OK
- нажать ESC, Enter, выбрать OK
- При необходимости ввести
текстовую часть почтового
сообщения.
- Нажав на F10, Enter - закончить
создание нового письма
При просмотре содержимого
письма со вложением
закодированная часть не
отображается, но отмечается
сообщением:
Attachment <Binary: FILENAME.XXX>
в конце почтового сообщения
где FILENAME.XXX - имя
закодированного файла
Для декодирования письма
надо:
- запустить программу
- клавищей ПРОБЕЛ отметить
письмо, имеющее вложение
- перейти в меню (F2) и выбрать
меню ОБРАБОТКА
- выбрать подменю ИЗВЛЕЧЬ
ДАННЫЕ
- Программа попросит ввести
каталог, в котором будет
сохранен декодированный
файл (в нашем примере его
имя - FILENAME.XXX). Завершите
работу с Dmail, перейдите в
соответствующий каталог и
используйте файл
по-назначению.
|
 |
6.Если у вас стоит Eudora 3.0
Программа Eudora позволяет
кодировать сообщения в
форматах:
- BASE64
- QUOTED-PRINTABLE
- BINHEX
Если надо послать письмо
по-русски на запад, то
используйте кодировку
QUOTED_PRINTABLE.
Для включения данного режима
надо нажать на кнопку QP в
окошке 'нового письма'. В
остальных случаях кнопка QP
должна быть отжата.
Если вы хотите вставить в
письмо файл в формате BASE64 или
BINHEX, то в меню слева от кнопки QP
надо выбрать одну из кодировок
и в окне Eudora подменю MESSAGE, ATTACH FILE
выбрать на диске имя файла.
Программа Eudora позволяет
сделать несколько вложений
файлов в одно письмо, но не
стоит этим злоупотреблять, так
как не все программы умеют
декодировать такой формат
данных.
Если Вы получили письмо с
attach-файлом, то в заголовке
письма появится строка
Attach: Filename
где Filename - имя
присоединенного файла
При условии, что файл имеет
для Windows стандртное расширение,
(DOC, BMP, XLS и т.д) достаточно
щелкнуть по имени файла мышкой
и будет запущена
соотетствующая программа
обработки. Если необходимо
выделить вложенный файл из
письма, то вы его найдете в
каталоге EUDORA\ATTACH. После
удаления письма из п/я
соответствующий attach-файл из
каталога EUDORA\ATTACH будет также
удален.
|
 |
7.Если у вас стоит Internet Mail
Программа Internet Mail позволяет
использовать сдедующие
кодировки:
- UUENCODE
- BASE64
- QUOTED PRINTABLE
Программа обеспечивает
гибкую настройку на
используемые кодировки.
Доставку и отправку почтовых
сообщений обеспечивают
соответственно POP3- и
SMTP-серверы. Их доменные имена
определяются в меню СООБЩЕНИЯ,
ПАРАМЕТРЫ, СЕРВЕРЫ.
В меню "СООБЩЕНИЯ,
ПАРАМЕТРЫ, НАСТРОЙКА надо
выбрать кодировку UUENCODE.
В главном меню программы
выберите ВИД->НАБОР
СИМВОЛОВ->КОРРИЛИЦА (KOI8-R).
Эта настройка необходима для
согласования используемой в
программе кодировки с
кодировкой почтовых сообщений.
Выбор можно сделать в окне
нового письма через меню
ФОРМАТ->НАСТРОЙКА.
Еще одно замечание.
Программа позволяет
автоматически кодировать и
разрезать письма большого
размера на куски
фиксированного размера. Размер
куска задается в меню
ПАРАМЕТРЫ->ОТПРАВКА->'Разделять
сообщения более'
Для декодирования
присоединенного файла
имеющего стандартный формат
просто щелкните по нему мышкой.
Файл будет открыт стандартной
программой просмотра файлов
данного типа. Если необходимо
скопировать присоединенный
файл на диск, то можно открыв
письмо выбрать меню
ФАЙЛ->Сохранить вложения.
Программа Internet Mail позволяет
сделать несколько вложений
файлов в одно письмо, но не
стоит этим злоупотреблять, так
как не все программы умеют
декодировать такой формат
данных
|
 |
8.Как правильно выбрать тип кодировки.
Возможны следующие ситуации.
- необходимо передать нетекстовый
файл абоненту на территории
СНГ.
Используйте в этом случае
UUENCODE.
UUENCODE встроено в Bmail, Dmail и
Internet Mail.
См. примечание в
конце данного раздела.
- необходимо передать
нетекстовый файл за
пределы СНГ.
Используйте в этом случае
BASE64 или QUOTED_PRINTABLE.
Эти кодировщики встроены
во все оболочки кроме Bmail.
См. примечание в конце
данного раздела.
- вы хотите переписываться по-русски
с западным
корреспондентом
Данный режим поддерживают
все оболочки кроме Bmail и
Dmail.
Включите кодировку
QUOTED_PRINTABLE (QP).Если выбрана
кодировка QP, то почтовая
программа автоматически
преобразует в QP введенный
текст сообщения, налету.
Письмо может быть набрано
в любой кодировке символов
(CP1251, KOI8 и т.п) с
использованием любого
национального алфавита.
Если корреспондент имеет
соответствующие шрифты, то
при открытии вашего письма
текст будет автоматически
преобразован в читаемую
форму.
Примечание.
Если ваш удаленный
корреспондент не может
прочитать ваше сообщение, то
надо выяснить какой почтовой
программой он пользуется. Его
можно об этом спросить или
проанализировать заголовок
полученного от него письма.
Поле заголовка
X-Mailer: Internet Mail
определяет название программы,
которой пользуется ваш
корреспондент.
СОВЕТ.
По опыту, гораздо проще
приспособиться к формату
кодировки, используемой вашим
корреспондентом, чем обучать
его пользованию новыми
программными средствами.
|
 |
9. Кодирование больших файлов
Для передачи и кодирования
больших файлов используются 2
подхода:
a) файл большого размера
разрезается на куски и эти
куски кодируются и передаются
отдельными письмами.
Проще всего произвести такую
операцию при помощи любой
программы архивации,
позволяющей создавать
многосекционные архивы (ARJ, RAR и
т.п.), например команда
arj a -v60K prog@ *.*
произведет архивацию всех
файлов в текущем каталоге и
разобьет выходной файл на
несколько частей длиной не
более 60К.
b) файл кодируется целиком и
затем режется на куски.
Кодировку можно произвести при
помощи любой из программ,
перечень которых имеется в
разделе 11 и разбить на куски
при помощи любого текстового
редактора.
|
 |
10.Кодовая таблица русских символов
Данный вопрос
непосредственно не касается
проблемы кодирования
нетекстовых сообщений. Но
очень часто пользователи
возникают трудности при чтении
текстового сообщения после
декодирования. В общем случае
при наборе текста отправителем
может быть использована любая
кодовая таблица символов. Чаще
всего текстовые сообщения
создаются в кодировках KOI8-R,
Alternative, CP1251 и ISO-8859. В заголовке
письма в поле 'charset=' обычно
помещается информация об
используемой кодировке, но к
сожалению очень часто
кодировка указывается неверно.
Так как пределить кодировку по
внешнему виду символов очень
трудно, то приходится
экспериментировать,
преобразуя текст письма одной
из программ для перекодировки
одной кодовой тавлицы в другую.
Перечень этих программ имеется
в разделе "Руководство
по используемым кодировкам для
русских букв"
|
 |
11.Внешние программы-кодировщики
MIME64.EXE - BASE64 coder/decoder
Командная строка при декодировании:
>MIME64 filename
filename - имя файла в формате BASE64
Выходной
файл записывается под именем
входного, поэтому
рекомендуется сделать копию
исходного файла.
Командная строка при кодировании:
>MIME64 -e filename
filename - имя кодируемого файла
Выходной
файл в формате BASE64
записывается под именем
входного, поэтому
рекомендуется сделать копию
исходного файла.
Различные программы
BASE64-кодировщики могут
создавать несовместимые
строки заголовка, поэтому если
Вам не удалось декодировать
сообщение при помощи программы
MIME64.EXE удалите из письма все,
кроме закодированной части и
создайте новый файл, состоящий
из заголовка, приведенного
выше, оставив закодированный
блок. Запустив программу MIME64
декодированный файл будет
сохранен под именем, стоящим
после команды 'name=' в заголовке,
в данном примере - 'file.doc'.
Content-Type: text/plain;
charset=US-ASCII; name=file.doc
Content-transfer-encoding: base64
CYXhq6ggr+CoIOCgoa7ipSDhIO2rpari4K6tra6pIK+u5+KuqSCi6yCvqOil
4qUgr6jh7KygDQoJraWvruHgpeHioqWtra4goiCvrufirqKuqSCv4K6j4KCs
Получить кодировщик
можно по адресу : ftp://ftp.rcom.ru/arch+comp/mime64.zip
MIMEQP.EXE - QUOTED_PRINTABLE coder/decoder
Командная строка при декодировании:
>MIMEQP64 filename
filename - имя файла в формате BASE64
Примечание:
выходной файл записывается под
именем входного, поэтому
рекомендуется сделать копию
исходного файла.
Командная строка при кодировании:
>MIMEQP -e filename
filename - имя кодируемого файла
Примечание:
выходной файл в формате BASE64
записывается под именем
входного, поэтому
рекомендуется сделать копию
исходного файла.
Получить кодировщик
можно по адресу : ftp://ftp.rcom.ru/arch+comp/mimeqp.zip
UUENCODE.EXE - UUENCODE coder
Командная строка при
кодировании:
>UUENCODE filename
filename - имя кодируемого файла
Примечание: выходной
файл записывается под именем
filename.uue. Если число строк в
выходном файле больше 950,
программа создаст несколько
закодированных файлов.
Запустив команду с ключом -s XXXX,
где XXXX - максимальное число
строк в выходном файле (950
по-умолчанию).
Получить кодировщик
можно по адресу : ftp://ftp.rcom.ru/arch+comp/uucode.zip
UUDECODE.EXE - UUDECODE decoder
Командная строка при
декодировании:
>UUDECODE filename
filename - имя декодируемого
файла
Получить кодировщик
можно по адресу : ftp://ftp.rcom.ru/arch+comp/uucode.zip
|
 |
|
|
|
|