导出excel
Posted xinshenghu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了导出excel相关的知识,希望对你有一定的参考价值。
主要就是把下面表格导出
需要一个aspx页 做request处理
设置一下response头 write一个table出去就ok了
public void ExportExcel(ArrayList columns, ArrayList data) { Response.Clear(); Response.Buffer = true; Response.Charset = "GB2312"; //Response.Charset = "UTF-8"; Response.AppendHeader("Content-Disposition", "attachment;filename=" + "grid" + ".xls"); Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");//设置输出流为简体中文 Response.ContentType = "application/ms-excel";//设置输出文件类型为excel文件。 EnableViewState = false; Response.Write(ExportTable(data, columns)); Response.End(); } public static string ExportTable(ArrayList data, ArrayList columns) { StringBuilder sb = new StringBuilder(); //data = ds.DataSetName + "\\n"; int count = 0; //data += tb.TableName + "\\n"; sb.AppendLine("<meta http-equiv=\\"Content-Type\\" content=\\"text/html; charset=gb2312\\">"); sb.AppendLine("<table cellspacing=\\"0\\" cellpadding=\\"5\\" rules=\\"all\\" border=\\"1\\">"); //写出列名 sb.AppendLine("<tr style=\\"font-weight: bold; white-space: nowrap;\\">"); foreach (Hashtable column in columns) { sb.AppendLine("<td>" + column["header"] + "</td>"); } sb.AppendLine("</tr>"); //写出数据 foreach (Hashtable row in data) { sb.Append("<tr>"); foreach (Hashtable column in columns) { if (column["field"] == null) continue; Object value = row[column["field"]]; sb.AppendLine("<td>" + value + "</td>"); } sb.AppendLine("</tr>"); count++; } sb.AppendLine("</table>"); return sb.ToString(); }
以上是关于导出excel的主要内容,如果未能解决你的问题,请参考以下文章