将DataSet对象导出成Excel文档
一、不带格式控制
void btnExport_Click(object sender, EventArgs e) { IList<string> fields = new List<string>(); IList<string> headers = new List<string>(); fields.Add("数据库字段名1"); headers.Add("Excel字段名1"); fields.Add("数据库字段名2"); headers.Add("Excel字段名2"); StringBuilder strFlag = new StringBuilder(); foreach (string head in headers) { strFlag.Append(head + ","); if (head == headers[headers.Count - 1]) { strFlag = strFlag.Remove(strFlag.Length - 1, 1); strFlag.Append("\r\n"); } } DataSet dt = new DataSet();//从数据库获取到数据 if (dt != null && dt.Tables[0].Rows.Count > 0) { foreach (DataRow row in dt.Tables[0].Rows) { foreach (string field in fields) { strFlag.Append(row[field]).Append(","); if (field == fields[headers.Count - 1]) { strFlag = strFlag.Remove(strFlag.Length - 1, 1); strFlag.Append("\r\n"); } } } Page.Response.Clear(); Page.Response.Buffer = false; Page.Response.Charset = "GB2312"; Page.Response.AppendHeader("Content-Disposition", "attachment;filename=Excel文件名.csv"); Page.Response.ContentType = "application/octet-stream"; Page.Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312"); Page.EnableViewState = false; Page.Response.Write(strFlag.ToString()); Page.Response.End(); } }