Декодировать строку темы письма в base64 и utf-8

1

Моя домашняя работа в курсе - это почтовый клиент, я использовал pop3 для получения строки по электронной почте:

Тема: =? UTF-8? B? 6L + Z5piv5Li76aKY? =

Затем я использовал regexp для извлечения 6L + Z5piv5Li76aKY, декодировал его с Base64, а мое рабочее пространство Eclipse - UTF-8. Это показывает: L_ /y + .., но изначально китайский 这 是 主题

Как я могу показать его правильно? Содержимое электронной почты работает хорошо, и оно кодируется также с Base64 и UTF-8, но субъект не может работать.

Вот код

if (buf.startsWith("Subject:")) {

    String regex = "=\\?UTF-8\\?B\\?(.*)\\?=";
    Pattern p = Pattern.compile(regex);
    Matcher m = p.matcher(buf);
    while (m.find()) {
        subject = MyBase64.getFromBASE64(m.group(1));
    }

    subject = MyBase64.getFromBASE64(buf.substring(8));
    System.out.println(subject);
}
Теги:
base64
email
utf-8
encode

1 ответ

0

Ну, мой метод прав. И я просто сделал глупую ошибку ~ извините: D

  • 1
    Возможно, вы могли бы поделиться своим исправлением?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню