当前位置:首页 > Windows程序 > 正文

C#导入导出Execl

2021-05-24 Windows程序

public ActionResult Export(FormCollection frm) { DataTable dts = new DataTable(); dts = _shopMemeber.ExportMemberData(frm); IWorkbook workbook = new XSSFWorkbook(); ISheet sheet = workbook.CreateSheet(); IRow headerRow = sheet.CreateRow(0); foreach (DataColumn column in dts.Columns) headerRow.CreateCell(column.Ordinal).SetCellValue(column.Caption); int rowIndex = 1; foreach (DataRow row in dts.Rows) { IRow dataRow = sheet.CreateRow(rowIndex); foreach (DataColumn column in dts.Columns) { dataRow.CreateCell(column.Ordinal).SetCellValue(row[column].ToString()); } rowIndex++; } string filepath = Server.MapPath("/") + @"用户列表.xlsx"; FileStream file = new FileStream(filepath, FileMode.Create); workbook.Write(file); ExcelHelper.DownLoad(@"/用户列表.xlsx"); #region 不启用 #endregion return SuccessMsg("AdminMemberMemberIndex"); } //这个是下载到桌面的方法,没实现自选路径 public static void DownLoad(string FileName) { FileInfo fileInfo = new FileInfo(HttpContext.Current.Server.MapPath(FileName)); //以字符流的形式下载文件 FileStream fs = new FileStream(HttpContext.Current.Server.MapPath(FileName), FileMode.Open); byte[] bytes = new byte[(int)fs.Length]; fs.Read(bytes, 0, bytes.Length); fs.Close(); HttpContext.Current.Response.ContentType = "application/octet-stream"; //通知浏览器下载文件而不是打开 HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(fileInfo.Name, System.Text.Encoding.UTF8)); HttpContext.Current.Response.BinaryWrite(bytes); HttpContext.Current.Response.Flush(); HttpContext.Current.Response.End(); }  

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/70029.html