asp.net datatable 导出为 txt
生活随笔
收集整理的這篇文章主要介紹了
asp.net datatable 导出为 txt
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
如下是導(dǎo)出到TXT的方法
public static void ToTxt(DataTable dv, string FileName){System.IO.StringWriter sw = new System.IO.StringWriter();StringBuilder sb = new StringBuilder();//寫標(biāo)題for (int i = 0; i < dv.Columns.Count; i++){if (i > 0){sb.Append("\t ");}sb.Append(dv.Columns[i].ColumnName);}sw.WriteLine(sb.ToString());//寫內(nèi)容for (int rowNo = 0; rowNo < dv.Rows.Count; rowNo++){StringBuilder sbTemp = new StringBuilder();for (int columnNo = 0; columnNo < dv.Columns.Count; columnNo++){if (columnNo > 0){sbTemp.Append("\t ");}sbTemp.Append(dv.Rows[rowNo][columnNo].ToString());}sw.WriteLine(sbTemp.ToString());}System.Web.HttpResponse response = System.Web.HttpContext.Current.Response;response.Clear();response.Buffer = true;response.ContentEncoding = System.Text.Encoding.Default;response.ContentType = "text/plan";response.AddHeader("Content-Disposition", "attachment; filename=" + FileName + ".txt");response.Charset = "gb2312";response.Write(sw.ToString());response.End();sw.Close();}如下是導(dǎo)出到EXCEL的方法 /// <summary>/// Renders the html text before the datagrid./// </summary>/// <param name="writer">A HtmlTextWriter to write html to output stream</param>private static void FrontDecorator(HtmlTextWriter writer){writer.WriteFullBeginTag("HTML");writer.WriteFullBeginTag("Head");writer.WriteEndTag("Head");writer.WriteFullBeginTag("Body");}/// <summary>/// Renders the html text after the datagrid./// </summary>/// <param name="writer">A HtmlTextWriter to write html to output stream</param>private static void RearDecorator(HtmlTextWriter writer){writer.WriteEndTag("Body");writer.WriteEndTag("HTML");}public static void ToExcel(System.Web.UI.WebControls.DataGrid DataGrid2Excel,string FileName,string Title, string Head){System.IO.StringWriter sw = new System.IO.StringWriter();System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(sw);FrontDecorator(hw);if ( Title != "")hw.Write(Title + "<br>");if ( Head != "")hw.Write(Head + "<br>");DataGrid2Excel.EnableViewState = false;DataGrid2Excel.RenderControl(hw);RearDecorator(hw);System.Web.HttpResponse response = System.Web.HttpContext.Current.Response;response.Clear();response.Buffer = true;response.ContentEncoding = System.Text.Encoding.Default;response.ContentType ="application/Excel";response.AddHeader("Content-Disposition", "attachment; filename=" + FileName + ".xls");response.Charset = "gb2312";response.Write(sw.ToString());response.End();}
public static void ToTxt(DataTable dv, string FileName){System.IO.StringWriter sw = new System.IO.StringWriter();StringBuilder sb = new StringBuilder();//寫標(biāo)題for (int i = 0; i < dv.Columns.Count; i++){if (i > 0){sb.Append("\t ");}sb.Append(dv.Columns[i].ColumnName);}sw.WriteLine(sb.ToString());//寫內(nèi)容for (int rowNo = 0; rowNo < dv.Rows.Count; rowNo++){StringBuilder sbTemp = new StringBuilder();for (int columnNo = 0; columnNo < dv.Columns.Count; columnNo++){if (columnNo > 0){sbTemp.Append("\t ");}sbTemp.Append(dv.Rows[rowNo][columnNo].ToString());}sw.WriteLine(sbTemp.ToString());}System.Web.HttpResponse response = System.Web.HttpContext.Current.Response;response.Clear();response.Buffer = true;response.ContentEncoding = System.Text.Encoding.Default;response.ContentType = "text/plan";response.AddHeader("Content-Disposition", "attachment; filename=" + FileName + ".txt");response.Charset = "gb2312";response.Write(sw.ToString());response.End();sw.Close();}如下是導(dǎo)出到EXCEL的方法 /// <summary>/// Renders the html text before the datagrid./// </summary>/// <param name="writer">A HtmlTextWriter to write html to output stream</param>private static void FrontDecorator(HtmlTextWriter writer){writer.WriteFullBeginTag("HTML");writer.WriteFullBeginTag("Head");writer.WriteEndTag("Head");writer.WriteFullBeginTag("Body");}/// <summary>/// Renders the html text after the datagrid./// </summary>/// <param name="writer">A HtmlTextWriter to write html to output stream</param>private static void RearDecorator(HtmlTextWriter writer){writer.WriteEndTag("Body");writer.WriteEndTag("HTML");}public static void ToExcel(System.Web.UI.WebControls.DataGrid DataGrid2Excel,string FileName,string Title, string Head){System.IO.StringWriter sw = new System.IO.StringWriter();System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(sw);FrontDecorator(hw);if ( Title != "")hw.Write(Title + "<br>");if ( Head != "")hw.Write(Head + "<br>");DataGrid2Excel.EnableViewState = false;DataGrid2Excel.RenderControl(hw);RearDecorator(hw);System.Web.HttpResponse response = System.Web.HttpContext.Current.Response;response.Clear();response.Buffer = true;response.ContentEncoding = System.Text.Encoding.Default;response.ContentType ="application/Excel";response.AddHeader("Content-Disposition", "attachment; filename=" + FileName + ".xls");response.Charset = "gb2312";response.Write(sw.ToString());response.End();}
?
?
轉(zhuǎn)載于:https://www.cnblogs.com/chenshulin01/p/3296486.html
總結(jié)
以上是生活随笔為你收集整理的asp.net datatable 导出为 txt的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 软引用、弱引用、虚引用
- 下一篇: 利用cors,实现js跨域访问Tomca