вьетнамская кодировка темы электронного письма?

StackOverflow https://stackoverflow.com/questions/5443723

  •  12-11-2019
  •  | 
  •  

Вопрос

Subject: Re:
 =?UTF-8?Q?Th=E1=BA=A7y_g=E1=BB=ADi_b=C3=A0i_t=E1=BA=ADp_cho_em_v=E1=BB?=
 =?UTF-8?Q?=9Bi.?=

Я получил электронное письмо с таким заголовком темы.Как это должно быть расшифровано?

Это было полезно?

Решение

Это MIME-кодированное слово.Синтаксис таков =?кодировка?передача-кодирование?закодированные данные?=.Кодировка передачи - это Base64 или Quoted-доступно для печати.

Чтобы расшифровать его:

  1. Разделите закодированное слово на 3 части.
  2. Расшифруйте данные (3-я часть) в byte[] в соответствии с его кодировкой передачи (2-я часть).В этом случае используется кодировка Q, поэтому замените =xx последовательности с соответствующими октетами.Это дает вам два байтовых массива [84, 104, 225, 186, 167, 121, 95, 103, 225, 187, 173, 105, 95, 98, 195, 160, 105, 95, 116, 225, 186, 173, 112, 95, 99, 104, 111, 95, 101, 109, 95, 118, 225, 187] и [155, 105, 46].
  3. Декодируйте эти массивы байтов в соответствии с указанной кодировкой.

В этом конкретном примере оба закодированных слова являются недействительный:В первом из них отсутствует следящий байт из 3-байтового символа UTF-8, а второй начинается с следящего байта.Но комбинированный, они являются допустимыми UTF-8 и декодируются в строку Thầy_gửi_bài_tập_cho_em_với. (что Google переводит как "Учитель отправил меня на тренировку".)

Другие советы

Это определено в RFC 2047: http://tools.ietf.org/html/rfc2047

См. Раздел 4 на кодировках.Я не уверен, что есть что-то в базовой рамки, которая обрабатывает это / обрабатывает это правильно.

Редактировать: вот попытка одного человека на это: http://vsevolodp.blogspot.com/2010/11/how-to-deCode-encoded-word-header.html

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top