DataTable导出excel 设置单元格格式
2023-09-27 14:26:14 时间
1 public static void DataTableExcel(DataTable dtData, String FileName) 2 { 3 System.Web.UI.WebControls.GridView dgExport = null; 4 System.Web.HttpContext curContext = System.Web.HttpContext.Current; 5 System.IO.StringWriter strWriter = null; 6 System.Web.UI.HtmlTextWriter htmlWriter = null; 7 8 if (dtData != null) 9 { 10 //设置编码和附件格式 作用是中文文件名乱码 11 //System.Web.HttpUtility.UrlEncode(FileName, System.Text.Encoding.UTF8) 12 curContext.Response.ContentType = "application/ms-excel"; // "application nd.ms-excel"; 13 curContext.Response.ContentEncoding = System.Text.Encoding.Default; 14 curContext.Response.Charset = "gb2312"; 15 curContext.Response.AddHeader("content-disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(FileName, System.Text.Encoding.UTF8) + ".xls"); 16 //导出Excel文件 17 strWriter = new System.IO.StringWriter(); 18 htmlWriter = new System.Web.UI.HtmlTextWriter(strWriter); 19 20 //为了解决dgData中可能进行了分页的情况,需要重新定义一个无分页的GridView 21 dgExport = new System.Web.UI.WebControls.GridView(); 22 dgExport.DataSource = dtData; 23 dgExport.AllowPaging = false; 24 dgExport.DataBind(); 25 26 //设置导出格式为文本格式防止丢失数据 27 dgExport.Attributes.Add("style", "vnd.ms-excel.numberformat:@"); 28 29 //设置excel单元格格式防止转换数据丢失数字 30 //for (int i = 0; i < dtData.Rows.Count; i++) 31 //{ 32 // for (int j = 0; j < dtData.Columns.Count; j++) 33 // { 34 // dgExport.Rows[i].Cells[j].Attributes.Add("style", "vnd.ms-excel.numberformat:@"); 35 // } 36 //} 37 38 //下载到客户端 39 dgExport.RenderControl(htmlWriter); 40 curContext.Response.Write("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=gb2312\" />" + strWriter.ToString()); 41 curContext.Response.End(); 42 }
另:
取行一般用rowfilter
1 DataTable datSource;//数据源表 2 //过滤表 3 DataView davTemp = new DataView(datSource, "过滤条件", "排序字段", DataViewRowState.各种 状态); 4 //把过滤后的表赋给新表 5 DataTable datNew = davTemp.ToTable();
取表的某列或多列
1 DataTable datSource;//数据源表 2 DataTable datNew= datSource.DefaultView.ToTable(false, new string[] { "列名", "列名" .....});
复制某行的值(前提是表结构或列数相同)
1 DataTable datSource; 2 DataTable datNew; 3 datSource.Rows[i].ItemArray= datNew. Rows[i].ItemArray;
调整列的位置SetOrdinal()
1 DataTable dat = new DataTable(); 2 //添加三列 3 dat.Columns.Add("col1"); 4 dat.Columns.Add("col2"); 5 dat.Columns.Add("col3"); 6 //添加一行数据 7 dat.Rows.Add(1,2,3); 8 //把第三列放到第一的位置 9 dat.Columns["col3"].SetOrdinal(0);
相关文章
- httpwebrequest抓取网页非字符串的文件数据时要使用流直接写文件(如excel,pdf等等)
- ext.net 2.5 导出excel的使用方法
- phpexcel生成excel并下载
- 绘制Excel字符画
- asp.net core导出导入excel
- Html Table用JS导出excel格式问题 导出EXCEL后单元格里的000412341234会变成412341234 7-14 会变成 2018-7-14(7月14) 自定义格式 web利用table表格生成excel格式问题 js导出excel增加表头、mso-number-format定义数据格式 数字输出格式转换 mso-number-format:"@"
- wpf 导出Excel Wpf Button 样式 wpf简单进度条 List泛型集合对象排序 C#集合
- Laravel 任务调度 SQL 数据导出 Excel
- 一个php文件就可以把数据库的数据导出Excel表格
- tablib把数据导出为Excel、JSON、CSV等格式的Py库(写入数据并导出exl)
- 《从Excel到R 数据分析进阶指南》一3.4 更改数据格式
- 共享excel工作簿
- Java 通过Xml导出Excel文件,Java Excel 导出工具类,Java导出Excel工具类
- Excel 数据透视表教程大全之 03 刷新数据、添加多个字段作为值字段、值显示为总数的百分
- Excel自动化之使用 Pandas 比较不同 Excel 文件中的列值
- 使用 Python 和 Streamlit 从 Excel 中进行 VLOOKUP
- 基于easyexcel的MySQL百万级别数据的excel导出功能
- java实现excel的导入导出(poi详解)
- Spring Boot 集成 easypoi实现excel的导入导出、excel导入导出含图片
- SpringBoot+EasyPoi实现excel导出
- 如何用Java将excel数据导入数据库
- sql server导出到excel错误:未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序
- 关于winfrom中如何快速导出DataGridView数据到excel中的问题
- 对比3种接口测试的工具:jmeter+ant;postman;python的requests+unittest或requests+excel
- [LeetCode] Excel Sheet Column Title 求Excel表列名称
- POI之Excel导出