Home

Page 41
Page 41
background image

произвольных байт в заголовке письма. Однако если необходимо закодировать 
один   байт,   для   этого   понадобится   четыре   символа,   что   менее   эффективно, 
нежели   рассмотренное   выше  Q  кодирование.   Так   же   отметим,   что   в  Q 
кодировании «нормальные» символы (US-ASCII) передаются без кодирования (1 
байт – 1 символ) а метод кодирования BASE64 будет кодировать в том числе и те 
байты, которые можно передать и без кодирования. 

Сравним эффективность методов кодирования на примерах:

• Необходимо передать 1000 произвольных байтов. 

o Q кодирование – 3000 знаков
o B кодирование – 1336 знаков

• Необходимо передать 1 произвольный байт. 

o Q кодирование – 3 знака
o B кодирование – 4 знака

• Необходимо передать 2 произвольных байта. 

o Q кодирование – 6 знака
o B кодирование – 4 знака

• Необходимо передать 3 произвольных байта. 

o Q кодирование – 9 знаков
o B кодирование – 4 знака

• Необходимо передать 4 произвольных байта. 

o Q кодирование – 12 знаков
o B кодирование – 8 знаков

• Необходимо передать 10 знаков, из которых два произвольных, остальные 

- ASCII 

o Q кодирование – 14 знаков
o B кодирование – 16 знаков

• Необходимо   передать   100   знаков,   один   из   которых   произвольный, 

остальные - ASCII 

o Q кодирование – 102 знаков
o B кодирование – 136 знаков

• Необходимо передать 1000 знаков, 5 из которых произвольные, остальные 

- ASCII 

o Q кодирование – 1010 знаков
o B кодирование – 1336 знаков

Делаем выводы:

При   необходимости   передать   длинные   последовательности 

символов,   в   которых   редко   встречаются   символы,   не   принадлежащие 
набору US-ASCII, эффективно использовать Q кодирование

При   необходимости   передать   длинные   последовательности 

произвольных символов,  эффективно использовать B кодирование

В промежуточных случаях можно рассчитать, сколько символов 

в   том   или   ином   способе   кодирования   будет   задействовано   и 
воспользоваться более эффективным кодированием.

Теперь, когда методы кодирования рассмотрены, отметим, что символьный 

набор   (charset)   представляет   собой  ASCII  текст,   зарегистрированный   в  IANA, 
например: KOI-8R, Windows-1251 и т.д. Теперь разберем несколько примеров:

1. Необходимо передать в заголовке строку 

To: Дима <dima@dima.com>


Copyright © 2022 Файлообменник files.d-lan.dp.ua

Использование любых материалов сайта возможно только с разрешения автора.