An invalid character was found in the mail header

by AigizK 27. марта 2010 12:43

Если при скачивание с вашего сайта файлов с русскими названиями возникает такая ошибка "An invalid character was found in the mail header" то проблему можно решить следующим способом:

public static string GetCleanedFileName(string s) 

{    

    char[] chars = s.ToCharArray(); 

    StringBuilder sb = new StringBuilder(); 

 

    for (int index = 0; index < chars.Length; index++) 

    { 

        string encodedString = EncodeChar(chars[index]); 

        sb.Append(encodedString); 

    } 

 

    return sb.ToString(); 

 

private static string EncodeChar(char chr) 

    UTF8Encoding encoding = new UTF8Encoding(); 

    StringBuilder sb = new StringBuilder(); 

    byte[] bytes = encoding.GetBytes(chr.ToString()); 

 

    for (int index = 0; index < bytes.Length; index++) 

    { 

        sb.AppendFormat("%{0}", Convert.ToString(bytes[index], 16)); 

    } 

    return sb.ToString(); 

}  

 

Оценок нет

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Комментарии

Комментарии закрыты

О нас

Это блог компании Инлайн. Мы занимаемся разработкой сайтов, корпоративных порталов и корпоративных информационных систем на основе новейших технологии Microsoft  - ASP.NET, SharePoint и Silverlight. А в этом блоге мы размещаем самые последние новости в области разработке для web.

Облако тегов