这是我尝试解析的示例原始电子邮件:
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})是一个编码字符。但在这种情况下,它似乎代表什么都没有。
答案 0 :(得分:89)
“= C2 = A0”表示字节C2 A0。但是,由于这是UTF-8,它转换为00A0,这是非破坏空间的Unicode。
请参阅 UTF-8 (维基百科)。
答案 1 :(得分:0)
%C2%A0这是一个隐藏文件夹的代码,创建一个隐藏文件夹并将其保存在其中,例如,一个文本文件,然后通过浏览器打开此文件,您将在搜索栏中看到这些字符。据我了解,这些字符是可选的,不会转换为其他代码。
答案 2 :(得分:0)
%C2%A0 是一个不间断空格