简体   繁体   English

C#-使用HttpContext将dataTable导出到Excel-格式化单元格值

[英]C# - export dataTable to Excel using HttpContext - format cell value

I exported an excel file from a datatable. 我从数据表中导出了一个Excel文件。 I used HttpContext. 我使用了HttpContext。 I need to have: 我需要:

在此处输入图片说明

But my result is: 但是我的结果是:

在此处输入图片说明

this is my code : 这是我的代码:

  protected void Export_Click(object sender, EventArgs e) { DataTable dt = GParam.GetreferentielContacts(); HttpContext context = HttpContext.Current; context.Response.Clear(); foreach (DataColumn column in dt.Columns){ context.Response.Write(column.ColumnName + "\\t"); } context.Response.Write(Environment.NewLine); foreach (DataRow row in dt.Rows){ for (int i = 0; i < dt.Columns.Count; i++){ context.Response.Write(row[i].ToString() + "\\t"); } context.Response.Write(Environment.NewLine); } context.Response.ContentType = "application/application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; context.Response.AppendHeader("Content-Disposition", "attachment; filename=test_export.xlsx"); context.Response.End(); } 

what are the parameters for formatting this first column ? 格式化第一列的参数是什么? Thanks 谢谢

It is resolved I used the EpPlus library The code is below 我使用了EpPlus库,已解决以下代码

  protected void Export_Click(object sender, EventArgs e) { DataTable dt = GParam.GetreferentielContacts(); HttpContext context = HttpContext.Current; context.Response.Clear(); context.Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; context.Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.UrlEncode("Logs.xlsx", System.Text.Encoding.UTF8)); using (ExcelPackage pck = new ExcelPackage()) { ExcelWorksheet ws = pck.Workbook.Worksheets.Add("Logs"); ws.Cells["A1"].LoadFromDataTable(dt, true); var ms = new System.IO.MemoryStream(); pck.SaveAs(ms); ms.WriteTo(Response.OutputStream); } context.Response.End(); } 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM