Что такое "= c2 = a0" в кодировке MIME, цитируемого текста?

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

  •  03-10-2019
  •  | 
  •  

Вопрос

Это пример сырой электронной почты, который я пытаюсь разбирать:

MIME-version: 1.0
Content-type: text/html; charset=UTF-8
Content-transfer-encoding: quoted-printable
X-Mailer: Verizon Webmail
X-Originating-IP: [x.x.x.x]

=C2=A0test testing testing 123

Что такое = c2 = a0? Я попробовал полдюжины цитируемых синжеров, но никто не обрабатывает это правильно. Как бы один правильно разобрал это в C #?

Честно говоря, я кодирую:

//TODO WTF
encoded = encoded.Replace("=C2=A0", "");

Поскольку я не могу выяснить, почему этот текст случайно в пределах содержимого MIME, и не должен быть оказан во всем. Просто удаляя его, я получаю желаемый эффект - но почему?!

Чтобы быть понятным, я знаю, что (= [0-9A-F] {2}) - кодированный символ. Но в этом случае, казалось бы, ничего не представляет.

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

Решение

«= C2 = A0» представляет собой байты C2 A0. Однако, поскольку это UTF-8, он переводится на 00A0, который является Unicode для невыполненного пространства.

Видеть UTF-8. (Википедия).

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