Mar*_*lin 2 c# vb.net mime quoted-printable
我正在 .NET 中处理法语字符串\n解码邮件正文,我收到“Chasn=C3=A9 sur illet”\n我想得到“Chasn\xc3\xa9 sur illet”\n但我不\通过 2 天的网络搜索找到任何解决方案。
\n\nC# 或 VB.NET\n有人可以帮助我吗?
\n\n谢谢
\n或者最简单的,只需使用我的MimeKit库中的QuotedPrintableDecoder:
static string DecodeQuotedPrintable (string input, string charset)
{
var decoder = new QuotedPrintableDecoder ();
var buffer = Encoding.ASCII.GetBytes (input);
var output = new byte[decoder.EstimateOutputLength (buffer.Length)];
int used = decoder.Decode (buffer, 0, buffer.Length, output);
var encoding = Encoding.GetEncoding (charset);
return encoding.GetString (output, 0, used);
}
Run Code Online (Sandbox Code Playgroud)
请注意,上面的其他答案假设解码的内容将为 ASCII 或 UTF-8,但情况不一定如此。您需要charset
从Content-Type
正在解码的 MIME 部分的标头获取参数。
当然...如果您不知道如何获取该信息,您可以简单地使用我很棒的MailKit库从 IMAP 获取 MIME 部分,并让它为您完成所有这些工作。
归档时间: |
|
查看次数: |
2463 次 |
最近记录: |