URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 85405
[ Назад ]

Исходное сообщение
"Замена кодировки с KOI8-R на UTF-8"

Отправлено dembi , 25-Май-09 12:47 
Привет, Всем!

Я использую почтовый сервер EXIM. Каким образом можно заменять кодировку в входящих сообщениях с KOI8-R на UTF-8?

Заранее спасибо всем!


Содержание

Сообщения в этом обсуждении
"Замена кодировки с KOI8-R на UTF-8"
Отправлено троллъ , 25-Май-09 13:58 
Зачем?

>Привет, Всем!
>
>Я использую почтовый сервер EXIM. Каким образом можно заменять кодировку в входящих
>сообщениях с KOI8-R на UTF-8?
>
>Заранее спасибо всем!


"Замена кодировки с KOI8-R на UTF-8"
Отправлено dembi , 25-Май-09 14:48 
Дело в том, отправляются сообщения на украинском языке.
Если допустим, отправляется буква «І», я получаю у себя на входе сообщение, где charset=koi8-r а сама буква закодирована как «=B6=».
Но в таблице кодирования KOI8-R нет вообще поддержки украинского, а во вторых символ «=B6=» это вообще какая-то фигня.
Насколько я вижу, кодировка UTF-8 поддерживает русский и украинский язык.
Поэтому мен нужно заменять кодировку с KOI8-R на UTF-8. И наверное символ «=B6=» перезаписывать на «=B2=» согласно кодировки UTF-8.

"Замена кодировки с KOI8-R на UTF-8"
Отправлено троллъ , 25-Май-09 16:01 
Кодировку письма формирует на этапе отправки почтовая программа,
В какой кодировке оно было отправлено, в такой к вам и придет, главное чтобы ваш почтовый клиент мог отображать письма в необходимой кодировке

>Дело в том, отправляются сообщения на украинском языке.
>Если допустим, отправляется буква «І», я получаю у себя на входе сообщение,
>где charset=koi8-r а сама буква закодирована как «=B6=».
>Но в таблице кодирования KOI8-R нет вообще поддержки украинского, а во вторых
>символ «=B6=» это вообще какая-то фигня.
>Насколько я вижу, кодировка UTF-8 поддерживает русский и украинский язык.
>Поэтому мен нужно заменять кодировку с KOI8-R на UTF-8. И наверное символ
>«=B6=» перезаписывать на «=B2=» согласно кодировки UTF-8.


"Замена кодировки с KOI8-R на UTF-8"
Отправлено dembi , 25-Май-09 16:10 
Дело в том, что все входящие сообщения передается другой внешней программе.

Для меня очень важно заменить этот и другие украинский символы на символы согласно схеме кодирования UTF-8.
Поэтому у меня и вопрос, как можно получив сообщение, заменить кодировку и передать это же сообщение дальше на внешнюю программу.


"Замена кодировки с KOI8-R на UTF-8"
Отправлено троллъ , 25-Май-09 16:18 
Честно говоря готового велосипеда для этой задачи не знаю, могу предложить изобрести свой :)
наверняка к exim можно прикрутить content_filter в котором анализировать заголовки, определять кодировку и пытаться переделывать письмо, инфу по формату сообщений в инете полно...


>Дело в том, что все входящие сообщения передается другой внешней программе.
>
>Для меня очень важно заменить этот и другие украинский символы на символы
>согласно схеме кодирования UTF-8.
>Поэтому у меня и вопрос, как можно получив сообщение, заменить кодировку и
>передать это же сообщение дальше на внешнюю программу.


"Замена кодировки с KOI8-R на UTF-8"
Отправлено dembi , 25-Май-09 17:33 
Возможно у тебя, у тебя есть готовые примеры с использованием «content_filter», если да, то дай, пожалуйста, ссылки на уже какие-то готовые примеры.


"Замена кодировки с KOI8-R на UTF-8"
Отправлено SubGun , 26-Май-09 11:41 
Может быть через iconv?

"Замена кодировки с KOI8-R на UTF-8"
Отправлено Andrey Mitrofanov , 26-Май-09 12:39 
>Может быть через iconv?

А может и через sed s/koi8-r/koi8-u/ig


"Замена кодировки с KOI8-R на UTF-8"
Отправлено аноним , 25-Май-09 20:38 
>Для меня очень важно заменить этот и другие украинский символы на символы
>согласно схеме кодирования UTF-8.

Не нужно вам ничего менять, нужно писать софт по-человечески, чтобы письма обрабатывались независимо от кодировки.


"Замена кодировки с KOI8-R на UTF-8"
Отправлено dembi , 26-Май-09 12:01 
>>Для меня очень важно заменить этот и другие украинский символы на символы
>>согласно схеме кодирования UTF-8.
>
>Не нужно вам ничего менять, нужно писать софт по-человечески, чтобы письма обрабатывались
>независимо от кодировки.

Клиент находится не у меня.
Я выступаю в роли транспорта. Отправитель отказывается менять, что-либо у себя.
Поэтому эту замену нужно сделать с моей стороны.


"Замена кодировки с KOI8-R на UTF-8"
Отправлено аноним , 26-Май-09 20:27 
При чем тут отправитель?

Отправитель формирует письмо согласно стандартов (в частности, если в заголовках указано koi8-r, в письме корректный koi8-r; если в заколовках koi8-u, в письме корректный koi8-u; если в заголовках utf-8, в письме корректный utf-8)? Если нет, пусть разбирается сам. Если да, то очевидно неправильно работает программа, которой вы передаете письма - разбирайтесь с ней. Ничего во время передачи письма менять не нужно.