亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

.net excel 導入 導出

2019-11-17 02:02:12
字體:
來源:轉載
供稿:網友

.net Excel 導入 導出

哎,好好的代碼今天說來個實驗,結果用的是office15 氣死人了,網上最高office14.dll 文章轉自2012年 QQ群:13615607 MR.Young
 1  PRotected void BtnLoad_Click(object sender, EventArgs e) 2         { 3             //dataDR datadr = new dataDR(); 4             //datadr.delete("delete from dbo.yuepingjueyuerbiao"); 5             string fileName = DateTime.Now.ToString("yyMMddhhmmss") + ".xls"; 6             string path = Server.MapPath("~/upload/excel/") + fileName; 7  8             FileUpload1.SaveAs(path); 9             if (path != null)10             {11                DataSet ds=loadSouce(path);12             }13             else14             {15                 Response.Write("<scrView Code
1  <div>2 3             <asp:FileUpload ID="FileUpload1" runat="server" /><asp:Button ID="BtnLoad" runat="server" Text="上傳" OnClick="BtnLoad_Click" />4 5         </div>6 7         <asp:Button ID="Button1" runat="server" Text="下載" style="height: 21px" OnClick="Button1_Click" />
View Code經過第二天想了以后,其實連接字符串什么都沒有問題,最后得出來的結論是因為導出并非標準格式的excel,不行的粘貼一下即可

導入方法

 1  private DataSet loadSouce(string path) 2         { 3  4  5             //連接EXCEL數據源 6             //string strPath = this.getPath(); 7             //string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path + ";Extended Properties=" + "/"" + "Excel 8.0;HDR=Yes;IMEX=1" + "/""; 8  9             // string strConn = "Provider = Microsoft.ACE.OLEDB.12.0;Data Source =" + path + ";Extended Properties='Excel 12.0;HDR=Yes;IMEX=1'";10             string strConn = "Provider = Microsoft.ACE.OLEDB.15.0;Data Source =" + path + ";Extended Properties='Excel 12.0;HDR=Yes;IMEX=1'";11             //此連接可以操作.xls與.xlsx文件 (支持Excel2003 和 Excel2007 的連接字符串)12             //備注: "HDR=yes;"是說Excel文件的第一行是列名而不是數據,"HDR=No;"正好與前面的相反。13             //      "IMEX=1 "如果列中的數據類型不一致,使用"IMEX=1"可必免數據類型沖突。 14 15             OleDbConnection conn = new OleDbConnection(strConn);16 17             conn.Open();18 19             /*20              如果用戶把sheet表名改了就是報下面的錯:21             'sheet1$' 不是一個有效名稱。請確認它不包含無效的字符或標點,且名稱不太長。 22             如果可以動態獲得Excel中各個sheet的名稱能動態的選中返回哪個sheet的數據,23             即使用戶更改了名稱也不怕,完全可以把所有sheet的名稱列出來供用戶選擇: 24             下面就把解決問題的代碼列出來,主要用到了OleDbConnection.GetOleDbSchemaTable()方法25              */26 27             //返回Excel的架構,包括各個sheet表的名稱,類型,創建時間和修改時間等28             System.Data.DataTable dtSheetName = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "Table" });29 30             //包含excel中表名的字符串數組31             string[] strTableNames = new string[dtSheetName.Rows.Count];32             for (int k = 0; k < dtSheetName.Rows.Count; k++)33             {34                 strTableNames[k] = dtSheetName.Rows[k]["TABLE_NAME"].ToString();35             }36 37             //OleDbDataAdapter myCommand = null;38             System.Data.DataTable dt = new System.Data.DataTable();39 40             //從指定的表明查詢數據,可先把所有表明列出來供用戶選擇41             string strExcel = "select * from [" + strTableNames[0] + "]";42 43 44 45             OleDbDataAdapter myCommand = new OleDbDataAdapter(strExcel, strConn);46 47             DataSet myDataSet = new DataSet();48 49 50             myCommand.Fill(myDataSet);51 52             return myDataSet;53         }
View Code

導出方法

 1  private void CreateExcel(System.Data.DataTable dt, string fileName) 2         { 3             HttpResponse resp; 4             resp = Page.Response; 5  6             resp.Buffer = true; 7             resp.ClearContent(); 8             resp.ClearHeaders(); 9             resp.Charset = "GB2312";10 11 12             //  resp.ContentEncoding = System.Text.Encoding.GetEncoding("utf-8");13             resp.AppendHeader("Content-Disposition", "attachment;filename=" + fileName);14             resp.ContentEncoding = System.Text.Encoding.Default;//設置輸出流為簡體中文   15             resp.ContentType = "application/ms-excel";//設置輸出文件類型為excel文件。 16 17 18 19             string colHeaders = "", ls_item = "";20 21             ////定義表對象與行對象,同時用DataSet對其值進行初始化22             //DataTable dt = ds.Tables[0];23             DataRow[] myRow = dt.Select();//可以類似dt.Select("id>10")之形式達到數據篩選目的24 25             int i = 0;26             int cl = dt.Columns.Count;27 28 29             // colHeaders += "tttttttt" + "/n";30             //取得數據表各列標題,各標題之間以t分割,最后一個列標題后加回車符31             for (i = 0; i < cl; i++)32             {33                 if (i == (cl - 1))//最后一列,加n34                 {35                     colHeaders += dt.Columns[i].Caption.ToString().Trim() + "/n";36                 }37                 else38                 {39                     colHeaders += dt.Columns[i].Caption.ToString().Trim() + "/t";40                 }41 42             }43             resp.Write(colHeaders);44 45             //向HTTP輸出流中寫入取得的數據信息46 47 48 49             //逐行處理數據 50             foreach (DataRow row in myRow)51             {52                 //當前行數據寫入HTTP輸出流,并且置空ls_item以便下行數據   53                 for (i = 0; i < cl; i++)54                 {55                     if (i == (cl - 1))//最后一列,加n56                     {57                         ls_item += row[i].ToString().Trim() + "/n";58                     }59                     else60                     {61                         ls_item += row[i].ToString().Trim() + "/t";62                     }63 64                 }65                 resp.Write(ls_item);66                 ls_item = "";67 68             }69             resp.End();70 71         }
View Code

記得引用Micorosoft.office.Interop.Excel


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
精品偷拍一区二区三区在线看| 日韩av免费一区| 亚洲福利影片在线| 欧美高清在线视频观看不卡| 欧美一级片在线播放| 亚洲免费视频观看| 精品久久国产精品| 欧美午夜精品伦理| 另类视频在线观看| 69久久夜色精品国产7777| 亚洲一区亚洲二区亚洲三区| 久久97精品久久久久久久不卡| 日韩精品电影网| 成人激情视频免费在线| 成人在线免费观看视视频| 亚洲国产成人精品女人久久久| 欧美大尺度电影在线观看| 三级精品视频久久久久| 久久中文字幕国产| 欧美性猛交丰臀xxxxx网站| 亚洲一区二区久久| 亚洲黄在线观看| 亚洲一区二区三区视频播放| 日韩福利伦理影院免费| 欧美日韩性生活视频| 国产精品无av码在线观看| 538国产精品一区二区在线| 亚洲人成在线观看网站高清| 91日韩在线视频| 一本大道香蕉久在线播放29| 欧美洲成人男女午夜视频| 国产日产久久高清欧美一区| 成人动漫网站在线观看| 国产精品男人爽免费视频1| 日韩电影中文字幕在线| 日韩欧美一区二区三区久久| 日韩精品在线第一页| 高清亚洲成在人网站天堂| 亚洲丝袜一区在线| 91极品视频在线| 久久精品国产亚洲一区二区| 国产精品高潮呻吟久久av野狼| 国产精品爽黄69天堂a| 日韩欧美福利视频| 亚洲欧美中文日韩在线| 欧美在线亚洲一区| 97婷婷大伊香蕉精品视频| 中文字幕欧美日韩精品| 久久亚洲精品毛片| 亚洲成**性毛茸茸| 91视频8mav| 精品调教chinesegay| 亚洲欧洲在线视频| 国产精品久久久久久久7电影| 91成人免费观看网站| 国产精品一区电影| 91亚洲精品在线观看| 日韩av中文字幕在线| 91久久综合亚洲鲁鲁五月天| 奇米4444一区二区三区| 亚洲第一天堂无码专区| 亚洲精品久久久久国产| 国产91在线高潮白浆在线观看| 国产激情久久久| 国产精品成人在线| 久久全球大尺度高清视频| 欧美成人手机在线| 亚洲无限乱码一二三四麻| 久久精品视频在线观看| 91精品国产综合久久久久久久久| 欧美激情欧美激情在线五月| 亚洲午夜女主播在线直播| 欧美限制级电影在线观看| 亚洲免费一在线| 亚洲激情视频网| 亚洲最大福利视频网站| 日韩中文在线中文网在线观看| 亚洲码在线观看| 国产精品久久久久久久久久免费| 日韩视频免费在线观看| 欧美日韩美女在线| 精品色蜜蜜精品视频在线观看| 久久综合九色九九| 在线视频欧美性高潮| 亚洲三级av在线| 久久久亚洲天堂| 久久综合伊人77777蜜臀| 亚洲黄页网在线观看| 久久6免费高清热精品| 亚洲最新在线视频| 亚洲第一福利在线观看| 久久影视电视剧免费网站清宫辞电视| 亚洲黄色在线观看| 久久精品国产欧美亚洲人人爽| 国内外成人免费激情在线视频网站| 午夜精品久久久久久久99黑人| 国产精品69精品一区二区三区| 亚洲人成网站999久久久综合| 久久久精品2019中文字幕神马| 欧美区二区三区| 91久久久久久久| 色综合视频一区中文字幕| 亚洲欧洲在线视频| 91九色国产社区在线观看| 日韩电影在线观看免费| 欧美日韩成人在线播放| 精品国产鲁一鲁一区二区张丽| 一本大道久久加勒比香蕉| 日韩av电影在线免费播放| 精品国产依人香蕉在线精品| 2019亚洲日韩新视频| 69国产精品成人在线播放| 日韩高清电影免费观看完整| 国产主播喷水一区二区| 中文字幕综合一区| 国产成人一区二区三区| 亚洲一区二区久久久久久久| 日韩在线视频观看正片免费网站| 久久久这里只有精品视频| 久久成人亚洲精品| 亚洲午夜女主播在线直播| 91在线免费网站| 欧美一区在线直播| 亚洲va欧美va在线观看| 午夜免费久久久久| 成人网在线免费观看| 日韩av手机在线观看| 69av在线视频| 插插插亚洲综合网| 日韩欧美一区二区三区久久| 亚洲欧洲偷拍精品| 久久综合伊人77777蜜臀| 成人黄在线观看| 6080yy精品一区二区三区| 国产国产精品人在线视| 在线成人一区二区| 亚洲三级 欧美三级| 亚洲第一网站免费视频| 日韩精品久久久久| 国产欧美一区二区三区四区| 欧美成人在线网站| 色妞欧美日韩在线| 欧美小视频在线观看| 成人福利在线观看| 国产成人免费av电影| 国产精品精品视频一区二区三区| 久久国产精品免费视频| 青青在线视频一区二区三区| 亚洲人av在线影院| 日韩成人xxxx| 亚洲春色另类小说| 51色欧美片视频在线观看| 国产精品成人一区| 欧美性高潮在线| 日韩av影院在线观看| 国产精品一区二区三区久久| 国产精品三级久久久久久电影| 久久成人综合视频| 欧美日韩亚洲一区二区| 黑人与娇小精品av专区| 亚洲午夜国产成人av电影男同| 欧美日本亚洲视频| 亚洲精品欧美一区二区三区| 国产一区视频在线播放|