JavaMail — имя файла вложения неправильно отображает символы UTF-8 ⇐ JAVA

Программисты JAVA общаются здесь
Anonymous
JavaMail — имя файла вложения неправильно отображает символы UTF-8

Сообщение Anonymous »

Я пытаюсь отправить письма, которые могут содержать символы UTF-8 в теме, теле сообщения и имени файла вложения.

Я могу отправлять UTF- 8 символов как в теме, так и в теле сообщения. Однако когда я отправляю вложение с символами UTF-8 в качестве имени файла вложения, оно отображается неправильно.

Поэтому мой вопрос заключается в том, как я могу установить имя файла вложения. как UTF-8?

Вот часть моего кода:

Код: Выделить всё

MimeBodyPart pdfPart = new MimeBodyPart();
pdfPart.setDataHandler(new DataHandler(ds));
pdfPart.setFileName(filename);
mimeMultipart.addBodyPart(pdfPart);
Позднее редактирование:

Я заменил

Код: Выделить всё

pdfPart.setFileName(filename);
с

Код: Выделить всё

pdfPart.setFileName(MimeUtility.encodeText(filename, "UTF-8", null));
и он работает отлично.
Всем спасибо.

Подробнее здесь: https://stackoverflow.com/questions/284 ... -correctly

Вернуться в «JAVA»