csharp: DataTable export to excel,word,csv etc
http://code.msdn.microsoft.com/office/Export-GridView-to-07c9f836
https://exporter.codeplex.com/
http://closedxml.codeplex.com/
http://epplus.codeplex.com/
/// <summary>/// 塗聚文修改/// </summary>/// <param name="dt"></param>/// <param name="Response"></param>/// <param name="filename"></param>public static void Convertword(DataTable dt, HttpResponse Response, string filename){Response.Clear();Response.AddHeader("content-disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(filename, System.Text.Encoding.UTF8) + ".doc");Response.Charset = "utf-8";Response.Cache.SetCacheability(HttpCacheability.NoCache);Response.ContentType = "application/vnd.word";System.IO.StringWriter stringWrite = new System.IO.StringWriter();System.Web.UI.HtmlTextWriter htmlWrite = new System.Web.UI.HtmlTextWriter(stringWrite);System.Web.UI.WebControls.GridView dg = new System.Web.UI.WebControls.GridView();dg.DataSource = dt;dg.DataBind();dg.RenderControl(htmlWrite);Response.Write(stringWrite.ToString());Response.End();//HttpContext.Current.ApplicationInstance.CompleteRequest();}/// <summary>/// /// </summary>/// <param name="dt"></param>/// <param name="Response"></param>/// <param name="filename"></param>public static void Convertexcel(DataTable dt, HttpResponse Response, string filename){Response.Clear();Response.AddHeader("content-disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(filename, System.Text.Encoding.UTF8) + ".xls");//Response.Charset = "utf-8";Response.Cache.SetCacheability(HttpCacheability.NoCache);Response.ContentType = "application/vnd.ms-excel";System.IO.StringWriter stringWrite = new System.IO.StringWriter();System.Web.UI.HtmlTextWriter htmlWrite = new System.Web.UI.HtmlTextWriter(stringWrite);System.Web.UI.WebControls.DataGrid dg = new System.Web.UI.WebControls.DataGrid();dg.DataSource = dt;dg.DataBind();dg.RenderControl(htmlWrite);Response.Write(stringWrite.ToString());Response.End();//HttpContext.Current.ApplicationInstance.CompleteRequest();}/// <summary>/// /// </summary>/// <param name="dataTable"></param>/// <param name="Response"></param>/// <param name="filename"></param>public static void ConvertCSV(DataTable dataTable, HttpResponse Response, string filename){Response.Clear();Response.Buffer = true;Response.AddHeader("content-disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(filename, System.Text.Encoding.UTF8) + ".csv");Response.Charset = "utf-8";Response.Cache.SetCacheability(HttpCacheability.NoCache);Response.ContentType = "Application/x-msexcel";StringBuilder sb = new StringBuilder();if (dataTable.Columns.Count != 0){foreach (DataColumn column in dataTable.Columns){sb.Append(column.ColumnName + ',');}sb.Append("\r\n");foreach (DataRow row in dataTable.Rows){foreach (DataColumn column in dataTable.Columns){if (row[column].ToString().Contains(",") == true){row[column] = row[column].ToString().Replace(",", "");}sb.Append(row[column].ToString() + ',');}sb.Append("\r\n");}}Response.Write(sb.ToString());Response.End();//HttpContext.Current.ApplicationInstance.CompleteRequest();}
winform:
/// <summary>/// winform/// Encoding导出无问题/// 涂聚文测试/// </summary>/// <param name="dgv"></param>/// <param name="fileName"></param>public static void ExportToCSV(DataGridView dgv, string fileName){if (dgv.Rows.Count < 1){MessageBox.Show("没有记录!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);return;}SaveFileDialog sfDialog = new SaveFileDialog();sfDialog.Filter = "CSV文件(*.csv)|*.csv|文本文件(*.txt)|*.txt|所有文件(*.*)|*.*";sfDialog.FilterIndex = 0;sfDialog.FileName = fileName;if (sfDialog.ShowDialog() == DialogResult.OK){string strFileName = sfDialog.FileName;StreamWriter sw = new StreamWriter(strFileName, false, Encoding.Unicode);string strLine = "";foreach (DataGridViewColumn col in dgv.Columns){if (col.Visible){strLine += "\"" + col.HeaderText.Trim().Replace("\"", "\\\"") + "\"" + "\t";}}strLine = strLine.Substring(0, strLine.Length - 1);sw.WriteLine(strLine);sw.Flush();foreach (DataGridViewRow dgvr in dgv.Rows){strLine = "";foreach (DataGridViewCell dgvc in dgvr.Cells){if (dgvc.Visible){if (dgvc.Value == null){strLine += "\t";}else{strLine += "\"" + dgvc.Value.ToString().Trim().Replace("\"","\"\"") + "\"" + "\t";}}}sw.WriteLine(strLine);sw.Flush();}sw.Close();MessageBox.Show(string.Format("数据已成功导出至\n{0}\n文件中!", strFileName), "导出成功", MessageBoxButtons.OK, MessageBoxIcon.Information);}}
转载于:https://www.cnblogs.com/geovindu/p/3668477.html
csharp: DataTable export to excel,word,csv etc相关推荐
- 一文学会用Python操作Excel+Word+CSV
作者:奈何缘浅wyj https://juejin.im/post/6868073137263607821 Python 操作 Excel 常用工具 数据处理是 Python 的一大应用场景,而 Ex ...
- SQLite Tutorial 4 : How to export SQLite file into CSV or Excel file
1.导出CSV格式 a.右键点击要导出的table名,选择export table b.然后打开export wizard,打开CSV标签,进行一些设置后,便可以选择保存位置了 c.最后打开效果 2. ...
- excel和csv区别pythonvin号_教你如何用python轻轻松松操作Excel、Word、CSV,一文就够了,赶紧码住!!!...
Python 操作 Excel 常用工具 数据处理是 Python 的一大应用场景,而 Excel 又是当前最流行的数据处理软件.因此用 Python 进行数据处理时,很容易会和 Excel 打起交道 ...
- 导入Excel和CSV文件
读取excel或csv文件中的数据暂时保存在DataTable中, 代码如下: public static DataTable ReadDataFromFile(string file, string ...
- excel打开csv错误换行_「乱吐槽·乱学习」excel高手捷径:一招鲜,吃遍天③
大家好,我是阿乱.话说三十而立,至于立的是什么玩意儿就见仁见智吧(≧∇≦)ノ,不过旗杆什么的先放下来哈,咱们这里说的是身上得有多几个技能,好让我们立于不败之地嘛.当然也欢迎年轻人加入啦,反正你们也免不 ...
- 小技巧:如何在R语言与excel/word之间进行复制粘贴
原创 康哥 勤用统计 问 R语言中能进行类似电脑中control+C/control+V的操作吗?现实数据处理过程中,经常需要进行R语言与Excel/word等文件的数据传输."笨方法&qu ...
- 使用UTF8编码将Excel转换为CSV
我有一个包含一些西班牙语字符(波浪号等)的Excel文件,我需要将其转换为CSV文件以用作导入文件. 但是,当我执行"另存为CSV"时,它会处理不是ASCII字符的"特殊 ...
- PHP 导入导出excel、csv百万数据到数据库
PHP 导入导出excel.csv百万数据到数据库 待解决: wamp下导入导出百万数据没有问题 lnmp下导入10W条数据没问题,导入50W及以上会出现nginx504报错 代码包地址 测试数据表地 ...
- 如何快速的将 DataTable 导入到 Excel 中 ?
咨询区 user1334858 我尝试将 DataTable 导入到 Excel 中,但我目前的方法性能太差,可能是因为我逐个 WorkSheet,Cell 去处理导致,下面是我的代码: List&l ...
最新文章
- Docker 宿主机定时清除容器的运行日志
- R语言dplyr包的top_n函数返回dataframe或tibble的前N行数据、dplyr包的top_frac函数返回dataframe或tibble的前百分之N(N%)的数据
- Linux线程时间片如何修改,请教如何修改线程时间片
- 更改hadoop native库文件后datanode故障
- Bootstrap+MetroNic_1.5.4 Head meta
- 新手如何快速学习单片机
- 将整个网站页面变成黑白色
- html生成pdf字体错误,使用wkhtmltopdf时显示为PDF的错误字体
- gcj编译java_用GCJ编译Java源文件成脱离JRE的exe可执行文件
- 罗马音平假名中文可复制_这首歌,代表了我们的青春,你会唱吗(附op罗马音中文音译)...
- python编程技术主要内容是_Python核心编程的四大神兽
- 命令查看yarn当前任务列表
- 挑战杯获奖作品_精仪科协 | 挑战杯获奖作品人物专访——刘宇航、郑重
- 进入docker容器的方法
- 小米A1(小米5X国际版)刷机完全指南
- 线性代数 --- 线性相关与线性无关(个人学习笔记)
- 什么叫loopback地址?是怎样用的?
- sqlserver2008 服务 远程过程调用失败
- iOS 获取当前时间之后N天的日期
- 解决运行qmake:Project ERROR: Cannot run compiler ‘cl‘. Output: