Я использую Java для отправки писем. Отправленное сообщение может быть на разных языках, но когда я отправляю его на японском языке, полученное письмо просто имеет «???????» символы.
Код выглядит примерно так:
String content = "\u30d5\u30a1\u30a4\u30eb\u540d:";
SMTPMessage message = new SMTPMessage(sess);
message.setFrom(new InternetAddress(from));
InternetAddress dests[] = new InternetAddress[]{ new InternetAddress(to) };
message.setRecipients(Message.RecipientType.TO, dests);
message.setSubject(subject);
message.setContent(content, "text/html");
Transport.send(message);
Отправляемый контент - это символы Юникода. Как правильно закодировать сообщение?