Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.12.2007, 07:30   #11
NoName_emaNoN
Форумчанин
 
Аватар для NoName_emaNoN
 
Регистрация: 15.11.2007
Сообщений: 229
По умолчанию

Да KORN, работает!

У меня получилось декодировать текст письма от Рассылки@mail.ru, но во первых:
Как мне определить, что это кодировка koi8-r?

И во вторых как вопрос был поставлен в начале сейчас всё крутиться возле этой фразы:
"=?koi8-r?B?7s/Xz9PUySAi8sHT09nMy8lATWFpbC5SdSI=?=", это тема письма от рассылок,

как мне её преобразовать?
Компьютер не подчиняется законам физики: глюки возникают из ниоткуда, файлы исчезают в никуда, а вес измеряется в метрах.
NoName_emaNoN вне форума Ответить с цитированием
Старый 07.12.2007, 07:42   #12
KORN
Банхаммер
Участник клуба
 
Аватар для KORN
 
Регистрация: 17.02.2007
Сообщений: 1,754
По умолчанию

1) если это кодировка вин то все придет в нормальном виде... если это KOI-8 следовательно в теме писма указанно это, сам посматри
Цитата:
"=?koi8-r?B?7s/Xz9PUySAi8sHT09nMy8lATWFpbC5SdSI=?= "
делай так...
pos('koi8', ..) если есть то значит делай перекодировку иначи нет...
Перед тем как спросить ищи на форуме и в GOOGLE
KORN вне форума Ответить с цитированием
Старый 07.12.2007, 08:34   #13
Sibedir
Тот ещё
Старожил
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Сообщений: 2,281
По умолчанию

Писал алгоритм автоопределения кодировки. Куда делось, хоть убей не помню. Помнь только, что, если точно известно, что текст русский, то он автоматически определял какая это кодировка из перечисленных: Win, DOS, Koi8R, Koi8U и ISO. Если очень уж нужно, поищу. Но это долго (до понедельника). Но на самом деле там было все очень просто. Написал программку, которая кушает txt книги на русском и определяет вероятность встречи какого либо символа и слова. Это сохраняется в файл. Далее еще проще, наш текст по очереди перекодируем в каждую из кодировок и проверяем побайтно и по словам и сумируем вероятности. Там где вероятность оказалось больше и есть наша кодировка.

SibTextEditor.zip

Исходники потерял, а вот промежуточный результат работы остался в TEMP'e. Прикрепленный файл - это файл хранящий последовательнось символов кодировок (их номера) относительно Win. Тоесть, для Win это будет последовательность 0..255, а для остальных там поменяны местами некоторые языковые символы (с 127 по 255).

Вот вся прога (сырая).

SibTextEditor.rar
Sibedir вне форума Ответить с цитированием
Старый 07.12.2007, 08:35   #14
NoName_emaNoN
Форумчанин
 
Аватар для NoName_emaNoN
 
Регистрация: 15.11.2007
Сообщений: 229
По умолчанию

Цитата:
Сообщение от KORN Посмотреть сообщение
1) если это кодировка вин то все придет в нормальном виде... если это KOI-8 следовательно в теме писма указанно это, сам посматри

делай так...
pos('koi8', ..) если есть то значит делай перекодировку иначи нет...
Ну ладно кодировку определить можно, но как я декодирую эту стороку?

Если тему функциями, которыё ты дал, то не получается, пробовал, ну сам посуди, там же в const только русские символы, а здесь в "теме" латинские, ясно, что функция не роботат.
Компьютер не подчиняется законам физики: глюки возникают из ниоткуда, файлы исчезают в никуда, а вес измеряется в метрах.
NoName_emaNoN вне форума Ответить с цитированием
Старый 07.12.2007, 08:44   #15
NoName_emaNoN
Форумчанин
 
Аватар для NoName_emaNoN
 
Регистрация: 15.11.2007
Сообщений: 229
Вопрос

Цитата:
Сообщение от Sibedir Посмотреть сообщение
Писал алгоритм автоопределения кодировки. Куда делось, хоть убей не помню. Помнь только, что, если точно известно, что текст русский, то он автоматически определял какая это кодировка из перечисленных: Win, DOS, Koi8R, Koi8U и ISO. Если очень уж нужно, поищу. Но это долго (до понедельника). Но на самом деле там было все очень просто. Написал программку, которая кушает txt книги на русском и определяет вероятность встречи какого либо символа и слова. Это сохраняется в файл. Далее еще проще, наш текст по очереди перекодируем в каждую из кодировок и проверяем побайтно и по словам и сумируем вероятности. Там где вероятность оказалось больше и есть наша кодировка.

Вложение 1855

Исходники потерял, а вот промежуточный результат работы остался в TEMP'e. Прикрепленный файл - это файл хранящий последовательнось символов кодировок (их номера) относительно Win. Тоесть, для Win это будет последовательность 0..255, а для остальных там поменяны местами некоторые языковые символы (с 127 по 255).

Вот вся прога (сырая).

Вложение 1856

Чо то я поробовал программу, не понял совсем, как мне допустим даже в текстовое поле программы вставить эту "проблемную" строку, чтоб она мне перевела на великий и могучий

Строка: "=?koi8-r?B?68nOz+vBxNI6INPSxcTBLCAwNSDExcv BwtLR?="
Компьютер не подчиняется законам физики: глюки возникают из ниоткуда, файлы исчезают в никуда, а вес измеряется в метрах.
NoName_emaNoN вне форума Ответить с цитированием
Старый 07.12.2007, 09:03   #16
Sibedir
Тот ещё
Старожил
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Сообщений: 2,281
По умолчанию

А! Это потому, что у тебя в строке только латинские символы, а они во всех кодировках одинаковые. Отличаются только символы с 127-го.
На счет этой строки не в курсе, я только хотел описать метод определения кодировки. В синтаксисе почты не шарю вообще.

В программе чтобы перевести скажем из Koi8R в ISO надо в выподающем списке выбрать Koi8R (текущая кодировка) и нажать кнопку ISO. Текущая кодировка автоматически установится в ISO. Если выделена часть текста, то перекодируется только она, а текущая кодировка не изменится.

::: Вообще, необходимость такой программы возникла в связи с одним не хилым глюком в одной отечественной инженерной программе. Там файл результатов заполнялся разными подпрограммами, и какого-то черта часть текста была Win, а часть DOS.

Последний раз редактировалось Sibedir; 07.12.2007 в 09:07.
Sibedir вне форума Ответить с цитированием
Старый 07.12.2007, 09:21   #17
NoName_emaNoN
Форумчанин
 
Аватар для NoName_emaNoN
 
Регистрация: 15.11.2007
Сообщений: 229
По умолчанию

Цитата:
Сообщение от Sibedir Посмотреть сообщение
А! Это потому, что у тебя в строке только латинские символы, а они во всех кодировках одинаковые. Отличаются только символы с 127-го.
На счет этой строки не в курсе, я только хотел описать метод определения кодировки. В синтаксисе почты не шарю вообще.

В программе чтобы перевести скажем из Koi8R в ISO надо в выподающем списке выбрать Koi8R (текущая кодировка) и нажать кнопку ISO. Текущая кодировка автоматически установится в ISO. Если выделена часть текста, то перекодируется только она, а текущая кодировка не изменится.

::: Вообще, необходимость такой программы возникла в связи с одним не хилым глюком в одной отечественной инженерной программе. Там файл результатов заполнялся разными подпрограммами, и какого-то черта часть текста была Win, а часть DOS.
Чо то попробовал, всё равно не получилось, в проге, когда нажимаешь на кнопку выделение с выделенной строки снимается, может поэтому не декодируется.

Я так понял, что если символы латинские, то никак с помощью этой проги не перевести?
Компьютер не подчиняется законам физики: глюки возникают из ниоткуда, файлы исчезают в никуда, а вес измеряется в метрах.
NoName_emaNoN вне форума Ответить с цитированием
Старый 07.12.2007, 09:38   #18
Sibedir
Тот ещё
Старожил
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Сообщений: 2,281
По умолчанию

А не надо понимать. Они все-таки декодируются. Ну кто виноват, что текст до кодировки такой же, как и после. Ведь переводчик с английского на русский переведет строку ",,,,,,,,," как ",,,,,,,,," и ни слова не скажет.
Sibedir вне форума Ответить с цитированием
Старый 07.12.2007, 09:50   #19
NoName_emaNoN
Форумчанин
 
Аватар для NoName_emaNoN
 
Регистрация: 15.11.2007
Сообщений: 229
Подмигивание

Цитата:
Сообщение от Sibedir Посмотреть сообщение
А не надо понимать. Они все-таки декодируются. Ну кто виноват, что текст до кодировки такой же, как и после. Ведь переводчик с английского на русский переведет строку ",,,,,,,,," как ",,,,,,,,," и ни слова не скажет.

То есть прога-декодер не сможет перевести нужный мне текст?

То есть ответ на вопрос:
"Как правильно отобразить тему письма?" это "НЕТ"?
Компьютер не подчиняется законам физики: глюки возникают из ниоткуда, файлы исчезают в никуда, а вес измеряется в метрах.
NoName_emaNoN вне форума Ответить с цитированием
Старый 07.12.2007, 10:00   #20
Sibedir
Тот ещё
Старожил
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Сообщений: 2,281
По умолчанию

Хорошо, давай сначала.
Вот скажи, тебе известно какая тема на самом деле должна получится из твоей строки?

"=?koi8-r?B?68nOz+vBxNI6INPSxcTBLCAwNSDExcv BwtLR?=" = ?
Sibedir вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблемы с кодировкой писем Черничный Win Api 7 16.06.2008 12:19
Microsoft Office Outlook Событие автоматической отправки писем из папки Исходящие при появлении интернета fandm Софт 0 23.04.2008 10:15
MS Excel и MS Outlook (2003) отсылка писем IceB Microsoft Office Excel 1 02.07.2007 13:32
Microsoft Office Outlook : отправка писем gaybiza Софт 1 18.11.2006 00:14