Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2002.01.17;
Скачать: [xml.tar.bz2];

Вниз

Кодировка почты   Найти похожие ветки 

 
SKiwa   (2001-10-01 13:24) [4]

Исторически сложилось так, что гарантированно проходят только 7бит символа(чистый ASCII), т.е. русские символы(8бит) могут быть искажены(да и не только русские).
Т.к. существуют сервера(а точнее люди, преимущественно в США) которые принципиально не желают знать других кодировок кроме ASCII, то для решения проблем применяются несколько подходов, один из них Base64.
В чем его смысл - 3 симола по 8 бит объединяются в 24 битное число, которое затем разбивается на 4 кода по 6 бит и они затем переводятся в коды символов таблицы ASCII в соответствии с таблицей
Code64: String[64] =
("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/");
Т.е. если 6 битовый код равен нулю то в текст письма будет подставлен символ "A" первый символ из приведенной строки. На клиентской стороне делается обратное преобразование и восстанавливается исходный текст.
Таким образом через сервера письма проходят без искажений т.к. не содержат 8 битовых символов, но при этом на 3 оригинальных символа передаются 4 символа соответствующих ASCII.
Если при преобразовании последний кусок из 3 символов заполняется не полностью, нельзя требовать от людей чтобы длинна текста была кратна 3, то в теле письма идут знаки "=" которые фактически обозначают отсутствие символа.



Страницы: 1 вся ветка

Форум: "Сети";
Текущий архив: 2002.01.17;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.004 c
14-52644
FLIZ
2001-11-21 18:52
2002.01.17
Где Дельфи5 хранит настройки кнопок меню ?


3-52480
grab
2001-12-14 20:05
2002.01.17
как закачать в stringgrid данные из Excel


1-52578
bit
2001-12-29 09:59
2002.01.17
ScanLine


1-52536
LLong
2001-12-26 17:17
2002.01.17
Искажения цвета


1-52540
vbazik
2001-12-23 16:44
2002.01.17
Графика, вставка с масштабированием





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский