C#Web项目中导出数据为Excel
来源:互联网 发布:北京java培训中心 编辑:程序博客网 时间:2024/06/07 01:56
导出数据为html中表格的形式注入。
public static string ExportExcelByAbs(DataTable DetailDT, string[,] ht, string subhead, string FileName, string userName = null) { StringBuilder OutTable = new StringBuilder(); try { if (DetailDT != null) { OutTable.Append("<table cellspacing=\"0\" cellpadding=\"5\" rules=\"all\" border=\"1\">"); OutTable.Append("<tr style=\"height:50px; font-weight:bold;font-size:20pt\" align=\"center\">"); OutTable.Append("<td colspan='" + Convert.ToString(ht.Length / 2) + "'>"); OutTable.Append(FileName); OutTable.Append("</td>"); OutTable.Append("</tr>"); if (subhead.Length > 0) { OutTable.Append("<tr style=\"height:30px;\" align=\"right\">"); OutTable.Append("<td colspan='" + Convert.ToString(ht.Length / 2) + "'>"); OutTable.Append(subhead); OutTable.Append("</td>"); OutTable.Append("</tr>"); } OutTable.Append("<tr style=\"height:30px;\">"); for (int i = 0; i < ht.Length / 2; i++) { OutTable.Append("<td>"); OutTable.Append(ht[i, 0]); OutTable.Append("</td>"); } OutTable.Append("</tr>"); for (int n = 0; n < DetailDT.Rows.Count; n++) { OutTable.Append("<tr style=\"height:30px;\">"); for (int ii = 0; ii < ht.Length / 2; ii++) { OutTable.Append("<td>"); string value = DetailDT.Rows[n][ht[ii, 1]].ToString(); if (ISNumber(value)) { value = Math.Abs(Convert.ToDecimal(value)).ToString(); } OutTable.Append(value); OutTable.Append("</td>"); } OutTable.Append("</tr>"); } OutTable.Append("<tr style=\"height:30px;\">"); OutTable.Append("<td colspan='" + Convert.ToString(ht.Length / 2) + "'><span style=\"width:50%\" align=\"left\">"); OutTable.Append("制表人:" + userName + "\t"); OutTable.Append("</span><span align=\"right\">"); OutTable.Append("制表时间" + DateTime.Now.ToShortDateString()); OutTable.Append("</span></td>"); OutTable.Append("</tr>"); OutTable.Append("</table>"); } } catch { } return OutTable.ToString(); }用到的解析是否为数据的方法
public static bool ISNumber(string numberString) { try { double num; num = double.Parse(numberString); return true; } catch { return false; } }
下面的正式的导出具体方法了。
protected void btnExcel_Click(object sender, EventArgs e){ DataTable dtList = new DataTable();string[,] ht = { { "提现单号", "WithdrawalNo" }, { "账号类型", "accountName" }, { "账号信息", "LogName" }, { "商家名称", "BussinessName" }, { "商家区域", "ProvinceName" }, { "提现类型", "moneyName" }, { "银行/卡号/开户行", "BankName" }, { "申请金额", "WithdrawalMoney" }, { "实际金额", "ActualMoney" }, { "提现前余额", "AgoAccount" }, { "提现后余额", "AfterAccount" }, { "审核状态", "auditName" }, { "打款状态", "flagName" }, { "打印状态", "printName" }, { "审核意见", "AuditRemark" }, { "申请时间", "ApplyTime" }, { "市场部审核时间", "AuditTime1" }, { "财务部审核时间", "AuditTime2" } }; string html = OutputExcel.ExportExcelByAbs(dtList, ht, "", "提现列表", AdminUser.RealName); ExportDsToXls("提现列表", html);}
protected void ExportDsToXls(string fileName, string html) { System.IO.StringWriter tw = new System.IO.StringWriter(); System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(tw); Response.Clear(); Response.Charset = "gb2312"; Response.ContentType = "application/vnd.ms-excel"; Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312"); Response.AppendHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(fileName) + ".xls"); Response.Write("<html><head><META http-equiv=\"Content-Type\" content=\"text/html; charset=gb2312\"></head><body>"); Response.Write(html); Response.Write(tw.ToString()); Response.Write("</body></html>"); Response.End(); hw.Close(); hw.Flush(); tw.Close(); tw.Flush(); }
阅读全文
0 0
- C#Web项目中导出数据为Excel
- web项目实现Excel数据导入导出
- JavaEE中把数据导出为Excel
- 将GridView中数据导出为Excel
- web导出table数据为excel、doc以及打印数据
- C# web 把dataSet数据导出为Excel文件
- Java web查出的数据导出为Excel的表格
- java web中将数据导出为Excel格式文件代码片段
- C#Excel数据导出
- javaweb项目-将数据导出为excel文件思路总结
- javascript实现web中table导出为excel
- web项目导出excel表格
- web项目-Excel文件导出
- DataGridView数据导出为Excel
- DataGridView 数据导出为EXCEL
- plsql 导出数据为excel
- 导出数据为excel表格
- 列表数据导出为Excel
- (7)高通AP10.4开发者指南——WLAN(2.1 主要数据结构)
- 关于集合
- idea+gradle+ssm框架搭建过程
- 使用Filter过滤器,控制不能直接访问JSP文件
- php 设计模式之 单列模式
- C#Web项目中导出数据为Excel
- 定向网页爬取
- Canvas学习笔记(一)线条和圆弧
- linux:ls、ls -l、ls -al区别
- android ScrollView 滚动到顶部
- gcc预处理阶段
- Hibernate配置文件与映射文件详解
- The model backing the 'XXX' context has changed 错误
- 前置和后置++