主頁 > 知識(shí)庫 > DataTable數(shù)據(jù)導(dǎo)出成Excel文件的小例子

DataTable數(shù)據(jù)導(dǎo)出成Excel文件的小例子

熱門標(biāo)簽:百度地圖標(biāo)注點(diǎn)擊事件 泰州手機(jī)外呼系統(tǒng)軟件 山東防封電銷卡辦理套餐 濟(jì)源人工智能電話機(jī)器人價(jià)格 廈門四川外呼系統(tǒng) 內(nèi)蒙古智能電銷機(jī)器人哪家強(qiáng) 杭州智能電話機(jī)器人 怎樣在地圖標(biāo)注消火栓圖形 地圖標(biāo)注位置多的錢

復(fù)制代碼 代碼如下:

///
/// 將DataTable中的數(shù)據(jù)導(dǎo)出到指定的Excel文件中
///
/// Web頁面對(duì)象
/// 包含被導(dǎo)出數(shù)據(jù)的DataTable對(duì)象
/// Excel文件的名稱
public static void Export(System.Web.UI.Page page,System.Data.DataTable tab,string FileName)
{
System.Web.HttpResponse httpResponse = page.Response;
System.Web.UI.WebControls.DataGrid dataGrid=new System.Web.UI.WebControls.DataGrid();
dataGrid.DataSource=tab.DefaultView;
dataGrid.AllowPaging = false;
dataGrid.HeaderStyle.BackColor = System.Drawing.Color.Green;
dataGrid.HeaderStyle.HorizontalAlign = HorizontalAlign.Center;
dataGrid.HeaderStyle.Font.Bold = true;
dataGrid.DataBind();
httpResponse.AppendHeader("Content-Disposition","attachment;filename="+HttpUtility.UrlEncode(FileName,System.Text.Encoding.UTF8)); //filename="*.xls";
httpResponse.ContentEncoding=System.Text.Encoding.GetEncoding("GB2312");
httpResponse.ContentType ="application/ms-excel";
System.IO.StringWriter tw = new System.IO.StringWriter() ;
System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter (tw);
dataGrid.RenderControl(hw);

string filePath = page.Server.MapPath("..")+"http://Files//" +FileName;
System.IO.StreamWriter sw = System.IO.File.CreateText(filePath);
sw.Write(tw.ToString());
sw.Close();

DownFile(httpResponse,FileName,filePath);

httpResponse.End();
}
private static bool DownFile(System.Web.HttpResponse Response,string fileName,string fullPath)
{
try
{
Response.ContentType = "application/octet-stream";

Response.AppendHeader("Content-Disposition","attachment;filename=" +
HttpUtility.UrlEncode(fileName,System.Text.Encoding.UTF8) + ";charset=GB2312");
System.IO.FileStream fs= System.IO.File.OpenRead(fullPath);
long fLen=fs.Length;
int size=102400;//每100K同時(shí)下載數(shù)據(jù)
byte[] readData = https://www.jb51.net/yongle_tianya/archive/2011/10/24/new byte[size];//指定緩沖區(qū)的大小
if(size>fLen)size=Convert.ToInt32(fLen);
long fPos=0;
bool isEnd=false;
while (!isEnd)
{
if((fPos+size)>fLen)
{
size=Convert.ToInt32(fLen-fPos);
readData = https://www.jb51.net/yongle_tianya/archive/2011/10/24/new byte[size];
isEnd=true;
}
fs.Read(readData, 0, size);//讀入一個(gè)壓縮塊
Response.BinaryWrite(readData);
fPos+=size;
}
fs.Close();
System.IO.File.Delete(fullPath);
return true;
}
catch
{
return false;
}
}

標(biāo)簽:朔州 百色 新鄉(xiāng) 朝陽 周口 喀什 洛陽 臺(tái)州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《DataTable數(shù)據(jù)導(dǎo)出成Excel文件的小例子》,本文關(guān)鍵詞  DataTable,數(shù)據(jù),導(dǎo)出,成,Excel,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《DataTable數(shù)據(jù)導(dǎo)出成Excel文件的小例子》相關(guān)的同類信息!
  • 本頁收集關(guān)于DataTable數(shù)據(jù)導(dǎo)出成Excel文件的小例子的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章