Hatred's Log Place

DON'T PANIC!

Sep 1, 2011 - 1 minute read -

JavaMail: кодировка темы сообщения

Делается так:

MimeMessage message = new MimeMessage(mailSession);
message.setSubject(subject, "utf-8");

сообщение в этом случае должно быть типа MimeMessage, потому как в интерфейсе Message нет метода setSubject() с аргументом, указывающим кодировку.

Но можно сделать и так:

Message message = new MimeMessage(mailSession);
message.setSubject(MimeUtility.encodeText(subject, "utf-8", "Q"));

Для тела сообщения кодировка задаётся вместе с mime-типом:

message.setContent(bodyText, "text/plain;charset=UTF-8");