Что такое "= c2 = a0" в кодировке MIME, цитируемого текста?
-
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. (Википедия).