【问题标题】:How to prevent css missing when exporting some html to excel file?将某些html导出到excel文件时如何防止css丢失?
【发布时间】:2013-10-24 15:56:37
【问题描述】:

我正在使用以下代码成功地将 html 表导出到 excel 文件

    public void exportGridToExcel(Control ctl)
    {
        string attachment = "attachment; filename=etrack_excel_export.xls";
        HttpContext.Current.Response.ClearContent();
        HttpContext.Current.Response.AddHeader("content-disposition", attachment);
        HttpContext.Current.Response.ContentType = "application/ms-excel";
        StringWriter stw = new StringWriter();
        HtmlTextWriter htextw = new HtmlTextWriter(stw);

        ctl.RenderControl(htextw);
        HttpContext.Current.Response.Write(stw.ToString());
        HttpContext.Current.Response.End();
    }

问题是导出后我应用于表格的所有css在excel文件中都丢失了,如何防止css丢失?

【问题讨论】:

    标签: c# asp.net css export-to-excel


    【解决方案1】:

    我终于有办法了!我把它分享给任何有同样问题的人:

            string attachment = "attachment; filename=etrack_excel_export.xls";
            HttpContext.Current.Response.ClearContent();
            HttpContext.Current.Response.AddHeader("content-disposition", attachment);
            HttpContext.Current.Response.ContentType = "application/ms-excel";
            StringWriter stw = new StringWriter();
            HtmlTextWriter htextw = new HtmlTextWriter(stw);
            ctl.RenderControl(htextw);
            HttpContext.Current.Response.Write(stw.ToString());
            FileInfo fi = new FileInfo(Server.MapPath("../Content/Styles/StyleSheet.css"));
            System.Text.StringBuilder sb = new System.Text.StringBuilder();
            StreamReader sr = fi.OpenText();
            while (sr.Peek() >= 0)
            {
                sb.Append(sr.ReadLine());
            }
            sr.Close();
            Response.Write("<html><head><style type='text/css'>" + sb.ToString() + "</style></head>" + stw.ToString() + "</html>");
            stw = null;
            htextw = null;
            Response.Flush();
            Response.End();
    

    【讨论】:

    • 您好,我遇到了同样的问题,我尝试像您一样读取丢失的 css 文件,但仍然遇到同样的错误。:(还有其他建议吗?
    猜你喜欢
    • 2020-08-11
    • 2011-01-01
    • 2020-07-24
    • 2010-09-08
    • 1970-01-01
    • 2022-11-06
    • 2020-09-27
    • 2011-01-14
    • 2017-12-20
    相关资源
    最近更新 更多