您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關(guān)服務(wù)器讀取EXCEL不安裝OFFICE的實(shí)現(xiàn)方法的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
前段時間用asp.net做了一簡單的游戲管理后臺,其中涉及到了上傳Excel導(dǎo)入數(shù)據(jù)的功能,本來在本地開發(fā)實(shí)現(xiàn)都好好的,可已上傳的服務(wù)器上就悲劇了。服務(wù)器是阿里云 Windows Server 2008 R2(X64),排查后發(fā)現(xiàn)服務(wù)器沒裝office這玩意,也就不會有OLEDB驅(qū)動程序,實(shí)在不想裝office,特別是office 2010,看著龐大的體積就頭疼,怎辦?
百度谷歌一番發(fā)現(xiàn),其實(shí)只要安裝Microsoft Access 2010 數(shù)據(jù)庫引擎可再發(fā)行程序包即可實(shí)現(xiàn)2010 Microsoft Office System 文件與非 Microsoft Office 應(yīng)用程序之間傳輸數(shù)據(jù),支持現(xiàn)有的 Microsoft Office 文件(例如 Microsoft Office Access 2010(*.mdb 和 *.accdb)文件和 Microsoft Office Excel 2010(*.xls、*.xlsx 和 *.xlsb)文件)與其他數(shù)據(jù)源(例如 Microsoft SQL Server)之間傳輸數(shù)據(jù)。還支持與現(xiàn)有文本文件建立連接。 此外,還會安裝 ODBC 和 OLEDB 驅(qū)動程序,供應(yīng)用程序開發(fā)人員在開發(fā)與 Office 文件格式連接的應(yīng)用程序時使用。該安裝包下載地址:http://www.microsoft.com/zh-cn/download/details.aspx?id=13255 。
裝上這個包后,一段代碼就搞定:
/// <summary> /// 連接Excel 讀取Excel數(shù)據(jù) 并返回DataSet數(shù)據(jù)集合 /// </summary> /// <param name="filepath">Excel服務(wù)器路徑</param> /// <param name="tableName">Excel表名稱</param> /// <returns></returns> public static System.Data.DataSet ExcelSqlConnection(string filepath, string tableName) { //string strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filepath + ";Extended Properties='Excel 8.0;HDR=YES;IMEX=1'"; string strCon = "Provider=Microsoft.Ace.OleDb.12.0;Data Source=" + filepath + ";Extended Properties='Excel 12.0;HDR=YES;IMEX=1'"; OleDbConnection ExcelConn = new OleDbConnection(strCon); try { string strCom = string.Format("SELECT * FROM [Sheet1$]"); ExcelConn.Open(); OleDbDataAdapter myCommand = new OleDbDataAdapter(strCom, ExcelConn); DataSet ds = new DataSet(); myCommand.Fill(ds, "[" + tableName + "$]"); ExcelConn.Close(); return ds; } catch { ExcelConn.Close(); return null; } }
感謝各位的閱讀!關(guān)于“服務(wù)器讀取EXCEL不安裝OFFICE的實(shí)現(xiàn)方法”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。