1. public ActionResult OverAllSummaryExport(string id)
  2. {
  3. #region 解决中文乱码
  4. Response.HeaderEncoding = Encoding.UTF8;
  5. string fileName = "安全生产标准化自评结果整体输出.doc";
  6. if (Request.UserAgent != null)
  7. {
  8. string userAgent = Request.UserAgent.ToUpper();
  9. if (userAgent.IndexOf("FIREFOX", StringComparison.Ordinal) <= 0)
  10. fileName = ToUtf8String(fileName);
  11. }
  12. #endregion
  13. string HTMLStr =string.Format("<html><head><meta http-equiv=Content-Type content=\"text/html; charset=utf-8\">{0}</head><body>{1}</body></html>",GetStyle(),GetBody(id));
  14. return File(Encoding.UTF8.GetBytes(HTMLStr), "application/vnd.ms-word", fileName);
  15. }
    1. /// <summary>
    2. /// 解决下载名称在IE下中文乱码
    3. /// </summary>
    4. /// <param name="s"></param>
    5. /// <returns></returns>
    6. private String ToUtf8String(String s)
    7. {
    8. StringBuilder sb = new StringBuilder();
    9. for (int i = 0; i < s.Length; i++)
    10. {
    11. char c = s[i];
    12. if (c >= 0 && c <= 255)
    13. {
    14. sb.Append(c);
    15. }
    16. else
    17. {
    18. byte[] b;
    19. try
    20. {
    21. b = Encoding.UTF8.GetBytes(c.ToString());
    22. }
    23. catch (Exception ex)
    24. {
    25. b = new byte[0];
    26. }
    27. for (int j = 0; j < b.Length; j++)
    28. {
    29. int k = b[j];
    30. if (k < 0) k += 256;
    31. sb.Append("%" + Convert.ToString(k, 16).ToUpper());
    32. }
    33. }
    34. }
    35. return sb.ToString();
    36. }

.net MVC 下载文件乱码问题解决方案的更多相关文章

  1. MVC下载文件方式

    MVC下载文件方式 http://www.cnblogs.com/liang--liang/archive/2012/10/20/2732745.html 方式一: public FileStream ...

  2. mvc下载文件

    MVC下载文件方式 方式一: public FileStreamResult DownFile(string filePath, string fileName)  {       string ab ...

  3. Microsoft Edge浏览器下载文件乱码修复方法(二)

    之前有写过"Microsoft Edge浏览器下载文件乱码修复方法",发现很多情况下下载文件乱码问题还是存在,这里对之前内容做简单补充,希望可以帮到大家. 方法二: 默认如果提示下 ...

  4. MVC下载文件方式 包括网络地址文件

    MVC下载文件方式 方式一: public FileStreamResult DownFile(string filePath, string fileName){      string absol ...

  5. Spring MVC -- 下载文件

    像图片或者HTML文件这样的静态资源,在浏览器中打开正确的URL即可下载,只要该资源是放在应用程序的目录下,或者放在应用程序目录的子目录下,而不是放在WEB-INF下,tomcat服务器就会将该资源发 ...

  6. spring MVC 下载文件(转)

    springle MVC中如何下载文件呢? 比struts2 下载文件简单得多 先看例子: @ResponseBody @RequestMapping(value = "/download& ...

  7. Asp.net mvc 下载文件

    前言 最近有需求需要下载文件,可能是image的图片,也可能是pdf报告,也可能是微软的word或者excel文件. 这里就整理了asp.net mvc 和asp.net webapi 下载的方法 A ...

  8. 【第十三篇】mvc下载文件,包括配置xml保护服务端文件不被外链直接访问

    这里先说下载文件 <a style="color:black; margin-right:3px;" onclick="dowAtt(' + index + ')& ...

  9. spring mvc 下载文件链接

    http://www.blogjava.net/paulwong/archive/2014/10/29/419177.html http://www.iteye.com/topic/1125784 h ...

随机推荐

  1. csu oj 1811: Tree Intersection (启发式合并)

    题目链接:http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1811 给你一棵树,每个节点有一个颜色.问删除一条边形成两棵子树,两棵子树有多少种颜色是有 ...

  2. Android 保存联系人,包括部门\职位\传真\地址\照片

    private void toSaveContactInfo() { ContentValues values = new ContentValues(); // 首先向RawContacts.CON ...

  3. hdoj 5335 Walk Out

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5335 #include<stdio.h> #include<cstring> ...

  4. Objc基础学习记录2

    1.[类 方法名]; //类方法,-静态成员函数, + (void)fun; 2.[对象名 方法名]; //实例方法, -非静态成员函数, - (void) fun; 3.带有冒号必须要有参数; 4. ...

  5. urlrewritingnet 域名http状态302 问题(转)

    UrlRewritingNet is an Url rewriting tool for ASP .Net and Elmahis a module for logging unhandled err ...

  6. JS:公历、农历互转

    先申明这段代码不是我写的,纯粹只是觉的比较好用,所以记录下来以后继续使用,也同样分享给大家,大家有更好的可以推荐给我,谢谢! function CalConv(M, dateStr) { if (da ...

  7. WinForm设置窗体默认控件焦点

    winform窗口打开后文本框的默认焦点设置,进入窗口后默认聚焦到某个文本框,两种方法: ①设置tabindex 把该文本框属性里的tabIndex设为0,焦点就默认在这个文本框里了. ②Winfor ...

  8. Hex-Rays decompiler type definitions and convenience macros

    /****************************************************************************************** Copyrigh ...

  9. HDU1028 Ignatius and the Princess III 【母函数模板题】

    Ignatius and the Princess III Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K ...

  10. MVC网站发布常见问题

    直接发布的时候生成的bin会漏掉一些文件,从而导致网站无法访问: 解决方法:发布之后,再在本地运行一下网站,然后将运行后生成的bin文件夹下的文件拷贝到发布的文件夹目录下进行覆盖,就可以了