Domanda

Questo è un esempio e-mail cruda che sto cercando di analizzare:

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

Qual è = C2 = A0? Ho provato una mezza dozzina di parser quoted-printable, ma nessuno maniglia questo modo corretto. Come sarebbe un modo corretto analizzare questo in C #?

Onestamente, per ora, sto codifica:

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

Perché non riesco a capire il motivo per cui il testo è là in modo casuale all'interno del contenuto MIME, e non dovrebbe essere reso in qualsiasi cosa. Con solo la rimozione, sto ottenendo l'effetto desiderato - ma perché

?!

Per essere chiari, io so che (= [0-9A-F] {2}) è un personaggio codificato. Ma in questo caso, rappresenta apparentemente NIENTE.

È stato utile?

Soluzione

"= C2 = A0" rappresenta i byte C2 A0. Tuttavia, poiché questa è UTF-8, si traduce in 00A0, che è Unicode per non-breaking space.

Vedere UTF-8 (Wikipedia).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top