コード例 #1
0
        private string DecodeImp(MailReader input, Encoding enc, bool header, GeneXus.Mail.Util.AsyncRunner runner)
        {
            int           charRead = 0;
            StringBuilder sb       = new StringBuilder();

            while ((charRead = input.Read()) != -1)
            {
                if (header)
                {
                    if (charRead == 13 || charRead == 10) // CR LF must be removed from header.
                    {
                        continue;
                    }
                    else
                    if (charRead == 95)     // Underscore in Header must be replaced by space.
                    {
                        charRead = ' ';
                    }
                }
                sb.Append((char)charRead);
                ResetTimer(runner);
            }
            return(DecodeQuotedPrintable(sb.ToString(), enc));
        }