日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

csharp: DataTable export to excel,word,csv etc

發布時間:2025/3/16 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 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的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。