zoukankan      html  css  js  c++  java
  • 无需安装微软组件的 excel导出方式

    /// <summary>
    /// 导出excel
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void LinkButton1_Click(object sender, EventArgs e)
    {

    string content = getExcelContent(VAS.BLL.Vas_Msg_ContactsManager.Vas_DuanXin_Buyer_Dcxuexirizhi_r5UserInfo());
    string css = ".firstTR td{color:blue;100px;}.secondTR td{color:blue;100px;}";
    string filename = "Test.xls";

    CommonTool.ExportToExcel(filename, content, css);
    }


    //内容很好理解,只需当成Table来拼字符串即可
    private string getExcelContent(DataTable dt)
    {
    StringBuilder sb = new StringBuilder();

    sb.Append("<table>");
    sb.Append("<thead><tr>");
    for (int m = 0; m < dt.Columns.Count; m++)
    {
    sb.Append("<th>" + dt.Columns[m] + "</th>");
    }
    sb.Append("</tr></thead>");
    sb.Append("<tbody>");

    for (int i = 0; i < dt.Rows.Count; i++)
    {
    sb.Append("<tr>");

    for (int j = 0; j < dt.Columns.Count; j++)
    {
    sb.Append("<td>" + dt.Rows[i][dt.Columns[j]] + "</td>");
    }
    sb.Append("</tr>");
    }

    sb.Append("</tbody></table>");
    return sb.ToString();
    }

    通用类

    /// <summary>
    /// 以流的形式,可以设置很丰富复杂的样式
    /// </summary>
    /// <param name="content">Excel中内容(Table格式)</param>
    /// <param name="filename">文件名</param>
    /// <param name="cssText">样式内容</param>
    public static void ExportToExcel(string filename, string content, string cssText)
    {
    var res = HttpContext.Current.Response;
    content = String.Format("<style type='text/css'>{0}</style>{1}", cssText, content);

    res.Clear();
    res.Buffer = true;
    res.Charset = "UTF-8";
    res.AddHeader("Content-Disposition", "attachment; filename=" + filename);
    res.ContentEncoding = System.Text.Encoding.GetEncoding("UTF-8");
    res.ContentType = "application/ms-excel;charset=UTF-8";
    res.Write(content);
    res.Flush();
    res.End();
    }

    人生匆匆几十年,BeYourself...
  • 相关阅读:
    JavaMail
    Web的文件下载
    Web的文件上传
    Tcp 数据对象传输接口对象设计
    m个元素中选取n的组合
    PyQT Quick Start
    版本发布自动触发测试
    plantUML 实操
    Python 版本对比
    Some Python Tricks
  • 原文地址:https://www.cnblogs.com/huagege/p/3559092.html
Copyright © 2011-2022 走看看