Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.12.04;
Скачать: CL | DM;

Вниз

Indy POP3: как сохранить приатаченный файл с русским именем   Найти похожие ветки 

 
IgorOKey   (2005-11-07 17:40) [0]

есть код:

if AMsg.MessageParts.Items[PartCount].ClassType=TIdAttachment then
begin
AttFile:=AMsg.MessageParts.Items[PartCount] as TIdAttachment;
AttFile.SaveToFile(ConfigRecord.vFilePath + AttFile.FileName);
end;

Если приатаченный файл имеет название латинское название (латинскими буквами), то все работает на ура, файлы сохраняются по указанному пути.
Но если к письму прикреплен файл с русскими буквами в названии то ничего не сохраняется. Название файла тест.txt в данном случае имеет вид:
=?Windows-1251?B?8uXx8i50eHQ=?=
Как это декодировать в нормальное имя файла?
Помогите..


 
palva ©   (2005-11-07 20:15) [1]

Outlook Express тоже кодирует русские имена приаттаченных файлов. Может быть иначе и нельзя, не знаю. Даже если можно поколдовать с заголовками message part, то нет гарантии, что все почтовые клиенты воспримут такое письмо правильно.

Если вопрос как декодировать, то это кодирование Base64


 
IgorOKey   (2005-11-08 09:16) [2]

На счет Base64 спасибо. Я с этим разобрался. Но после раскодировки Base
получается строка с кодировкой или Win-1251 или Koi-8 или еще что нибудь.
Если строка Win-1251, то имя файла получается нормальным, если Koi-8, то его опять нужно декодировать.

Короче говоря, как декодировать KOI-8?


 
palva ©   (2005-11-08 09:30) [3]

> как декодировать KOI-8?
Если KOI8-R, то по таблице, которую, можно взять, например, здесь.
http://www.nsc.ru/rus/inter/win-koi8.htm
А то еще бывает KOI8-U для украинского языка.



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

Текущий архив: 2005.12.04;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.03 c
14-1131712043
SPeller
2005-11-11 15:27
2005.12.04
Просто ради смеха


3-1129638648
Kor
2005-10-18 16:30
2005.12.04
Как перенисти БД с использованием BDE?


9-1121683630
WondeRu
2005-07-18 14:47
2005.12.04
GLScene! Как наложить сетку на уже отрендеренную картинку?


1-1131388255
San1
2005-11-07 21:30
2005.12.04
Как узнать код ошибки


14-1131609512
Asker
2005-11-10 10:58
2005.12.04
ограничить срок работы программы