När jag läser ett mail får jag följande meddelande:
H=E4r kommer lite nya h=E4rliga nyheter fr=E5n Farsta Centrum.
=A0
Hoppas alla ni f=E5r en h=E4rlig dag
// Helene
=A0
=A0
Helene Andersson
Marknadskoordinator
=A0
Atrium Ljungberg AB
Bes=F6k: Farsta Centrum,=A0Munkforsplan 33
Box 71, 123 22 Farsta
Vad betyder =A0 och finns det något bra sätt att översätta denna text till vanliga tecken? Jag tycker det här liknar quoted printable men hittar ingen bra översättning från det till vanliga ascii.
Nu har jag hittat en lösning. Först plockar jag ut alla =XX tecken:
// If not html and there are quoted strings in the text (hex characters) translate them into Ascii
try {
while (htmlMail == false && html.IndexOf("=") > 0) {
string replaceChar = html.Substring(html.IndexOf("=") + 1, 2);
string newChar = ConvertHexToAscii(replaceChar);
html = html.Replace("=" + replaceChar, newChar);
}
}
catch (Exception) {
// Just ignore the error. It's probably not quoted printable
}
Sen konverterar jag dem en efter en med denna metod
Kodningen kallas Quoted-printable och används oftast i mail.
Hur man konverterar med .NET vet jag inte men det finns säkert bättre sätt än while-loopar ;)
Jag såg en lösning där man skapade en instans av ett mail-objekt. Man skickade in texten i mailobjektet och ut kom den konverterade texten. Men jag fick inte till det så jag gjorde på mitt sätt :P
Det handlar också om ett fåtal mail i veckan, så prestanda är inga problem :)
259 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25