Или легче всего, просто использовать QuotedPrintableDecoder из моей библиотеки MimeKit:
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);
}
Обратите внимание, что другие ответы выше предполагают, что декодированного содержание будет ASCII или UTF-8, но это не обязательно дело. Вам нужно будет получить параметр charset
из заголовка Content-Type
части MIME, которую вы декодируете.
Конечно, если вы не знаете, как получить эту информацию, вы можете просто использовать мою огромную библиотеку MailKit, чтобы получить часть MIME из IMAP и заставить ее выполнять всю эту работу за вас.
Можете ли вы разместить бит вашего кода, где вы установили строку? –
Здравствуйте, Моя строка приходит от сервера IMAP я прочитал сообщение и получить текстовое сообщение на теле с IMAP КОМАНДЫ: FETCH BODY [TEXT] и возвращает мне строку закодированную в Quoted_printable формате И я не нахожу любая идея сделать конвертер –
@MarcCollin Смотрите код ниже с полным кодом. – ib11