DataSet导出到Excel比较完整的解决方案(一)--客户端生成文件(downmoon)
2009-01-16 10:19:16 来源:WEB开发网 闂傚倸鍊搁崐鎼佸磹閹间礁纾归柟闂寸绾惧綊鏌熼梻瀵割槮缁惧墽鎳撻—鍐偓锝庝簻椤掋垺銇勯幇顖毿撻柟渚垮妼椤粓宕卞Δ鈧獮濠勭磽閸屾艾鈧懓顫濋妸鈺佺疅缂佸顑欓崥瀣煕椤愵偅绶氱紓鍐╂礋濮婂宕掑▎鎴М濠电姭鍋撻梺顒€绉甸幆鐐哄箹濞n剙濡肩紒鎰殜閺屸€愁吋鎼粹€茬敖婵炴垶鎸哥粔鐢稿Φ閸曨垰鍐€妞ゆ劦婢€濞岊亪姊虹紒妯诲蔼闁稿海鏁诲濠氭晲婢跺﹤宓嗛梺缁樺姈缁佹挳宕戦幘璇叉嵍妞ゆ挻绋戞禍鐐叏濡厧浜鹃悗姘炬嫹

有一客户需求:
1、要从SQL Server数据库导出并生成Excel ;
2、用户下载对应的Excel并填写上传再导入到SQL server。
费了将近六个小时,故一定要把过程写下来,希望看到此文的朋友少走些不必要的弯路。
首先,想到的是直接导出到客户端,代码如下:
DataSetToExcel
public static void DataSetToExcel(DataSet oDS, HttpResponse Response, string fileName)
{
if (oDS == null || oDS.Tables[0] == null || oDS.Tables[0].Rows.Count == 0) { return; }
Response.Clear();
//Encoding pageEncode = Encoding.GetEncoding(PageEncode);
HttpContext.Current.Response.Charset = "gb2312";
//Response.ContentType = "application/vnd-excel";//"application/vnd.ms-excel";
//Response.ContentType = "application/x-octet-stream";//"application/vnd.ms-excel";
Response.ContentType = "text/csv";//"application/vnd.ms-excel";
Response.AppendHeader("Content-Disposition", "attachment;filename=" + fileName + ".cvs");
System.IO.StringWriter oSW = new System.IO.StringWriter();
HtmlTextWriter oHW = new HtmlTextWriter(oSW);
DataGrid dg = new DataGrid();
dg.DataSource = oDS.Tables[0];
dg.DataBind();
dg.RenderControl(oHW);
Response.Write(oSW.ToString());
Response.Flush();
Response.Close();
}
- ››Excel 2010:用数据透视表对数据立体化分析
- ››Excel 2010:数据分析透视图的用法
- ››Excel 2010:简洁实用的迷你图
- ››Excel 2010:快速分析数据之数据条
- ››Excel 2010:快速创建丰富的数据图表
- ››Excel 2010:动态洞察数据的切片器
- ››Excel 2010:使用数据透视表对数据进行立体化分析...
- ››Excel 2010:将数据分析结果分页显示
- ››Excel 2010:数据分析透视图
- ››Excel 2010:快速分析数据之图标集
- ››Excel 2010:快速标注数据表中的前3名数据
- ››Excel 2010:便捷的打印工作表选项
更多精彩
赞助商链接