ASP.net中導出excel方法有以下幾種: By admin 2010/8/15 18:16:00 1、由dataset生成 public void CreateExcel(DataSet ds,string typeid,string FileName) { HttpResponse resp; resp = Page.Response; resp.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312"); resp.AppendHeader("Content-Disposition", "attachment;filename=" + FileName); string colHeaders= "", ls_item=""; int i=0; //定義表對象與行對像,同時用DataSet對其值進行初始化 DataTable dt=ds.Tables[0]; DataRow[] myRow=dt.Select(""); // typeid=="1"時導出為EXCEL格式文件;typeid=="2"時導出為XML格式文件 if(typeid=="1") { //取得數據表各列標題,各標題之間以\t分割,最后一個列標題后加回車符 for(i=0;i<dt.Columns.Count-1;i++) colHeaders+=dt.Columns[i].Caption.ToString()+"\t"; colHeaders +=dt.Columns[i].Caption.ToString() +"\n"; //向HTTP輸出流中寫入取得的數據信息 resp.Write(colHeaders); //逐行處理數據 foreach(DataRow row in myRow) { //在當前行中,逐列獲得數據,數據之間以\t分割,結束時加回車符\n for(i=0;i<row.ItemArray.Length-1;i++) ls_item +=row[i].ToString() + "\t"; ls_item += row[i].ToString() +"\n"; //當前行數據寫入HTTP輸出流,并且置空ls_item以便下行數據 resp.Write(ls_item); ls_item=""; } } else { if(typeid=="2") { //從DataSet中直接導出XML數據并且寫到HTTP輸出流中 resp.Write(ds.GetXml()); } } //寫緩沖區中的數據到HTTP頭文件中 resp.End(); } 1.樓主在Response.ContentType后面加上編碼設置就可以防止亂碼了,如下: Response.Charset = "GB2312"; Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");//設置輸出流為簡體中文 2.有關000123變成123,是因為datagridview把這一列默認為數值類型的列了,要在導出之前綁定的時候設置一下datagridview改列數據類型,e.Row.Cells[i].Attributes.Add("class", "text"); 記住i是列的索引值。另外把style改成string style =@"<style> .text { mso-number-format:\@; } </script> "; 分享聯系我們 掃二維碼與項目經理溝通 我們在微信上24小時期待你的聲音 感謝您的關注分享“ASP.net中導出excel方法有以下幾種:” 煙寒網絡真誠為您服務 ,點擊客服直接咨詢下單. 立即咨詢 我們服務 網站建設 高端網站建設服務商、相信品牌力量、相信知名企業;制作后收費13014982176! 微信小程序/微信公眾號 微信小程序 背靠10億流量,不論用戶需求是什么,都能被開發使用 一點創意,就能在“社交圈”中脫穎而出。 網站優化/SEO 讓您的網站更靠近排名位置,讓客戶更容易找到您,seo優化是一個漫長過程,整個網站營銷花最少的錢起最大的作用。