Я отправил почту по заявке через java mail api с вложенным файлом, используя UTF-8 (Outlook) для просмотра почты. Но я получил письмо с другим именем вложения электронной почты (= UTF-8B0J7QsdGJ0Lgg0LRgNCw0LLQuNCw ....).
Не воспроизводится на SMTP-сервере Gmail.
Я пытался с CP866, но он создает проблему для имени вложения на японском и китайском языках.
public static MimeBodyPart createMimeBodyPart (File attachFile)
{
FileDataSource attachDataSource = new FileDataSource(attachFile.getPath());
MimeBodyPart mbp = new MimeBodyPart();
mbp.setDataHandler(new DataHandler(attachDataSource));
String filename = attachFile.getName();
mbp.setHeader("Content-type", "application/pdf charset=utf-8");
mbp.setFileName(MimeUtility.encodeText(filename, "UTF-8", "B"));
mbp.setHeader("Content-transfer-encoding", "base64");
return mbp;
}[![enter image description here][1]][1]