国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

利用ASP.NET來訪問Excel文檔

2024-07-10 12:58:22
字體:
來源:轉載
供稿:網友
利用asp.net來訪問excel文檔

  excel是microsoft公司的office套件中的一種軟件,他主要用來處理電子表格。excel以界面友好、處理數據迅速等優點獲得廣大辦公人員的歡迎。所以很多文檔就以excel的形式保存了下來。對于程序設計人員,在程序設計中,我們往往要訪問excel文件來獲得數據。但由于excel文件不是標準數據庫,所以用程序語言來訪問他就比較困難。

  asp.net是microsoft公司極力推薦的一個產品,作為.net framework框架中的一個重要組成部分,他主要用于web設計。全新的設計理念、強大功能使得asp.net正在受到越來越多的程序設計人員的歡迎。也正是asp.net的強大的功能才使得訪問excel文檔成為了一件相對簡單的事情。下面就通過一個例子來具體說明asp.net是如何訪問的excel文檔的。

  一. 程序設計及運行環境

  (1).windows 2000 professional

  (2)..net framework sdk beta 2

  (3).microsoft access data component 2.6(madc2.6)

  二. 具體的設計思路

  (1).獲得要訪問的excel文件名稱

  (2).讀出excel文件的內容

  (3).用datagrid格式顯示出來

  下面就一些關鍵的步驟來具體說明。

  三. 程序設計的關鍵步驟

  (1).為了方便,我們就把excel文件假定在c盤的根目錄,名稱為test.xls。

  (2).為了讀取excel文件,我們必須了解一個名稱空間(namespace)--system.data.oledb。system.data.oledb中有三個對象分別是oledbconnection,oledbcommand,oledbdataadapter。我們就是通過他們來訪問excel文件的。

  i> oledbconnection對象主要是提供連接方式。

  ii> oledbcommand對象提供對目標的具體操作方法。

  iii>oledbdataadapter對象是對對象進行不同操作后的返回數據集。

  為了讀取c盤的test.xls只要以下語句就可以完成:

dim myoledbconnection as oledbconnection = new
   oledbconnection("provider=microsoft.jet.oledb.4.0;" & _
   "data source=c:/test.xls;" & _
   "extended properties=""excel 8.0;""")
dim myoledbcommand as oledbcommand = new oledbcommand("select *
   from [sheet1$]",myoledbconnection) '如果你想讀出sheet2的內容
   ,把sheet1$改成sheet2$即可
dim mydata as oledbdataadapter= new
   oledbdataadapter(myoledbcommand)

  (3).讀出excel文件內容后,就要把他用datagrid顯示出來。為了顯示,還要用另外一個名稱空間--system.data。他里面有個對象dataset,他可以和datagrid進行數據幫定,從而以datagrid形式顯示數據。而此時讀出的數據集并不是以對象dataset來表現的,這就需要進行轉換,好在oledbdataadapter對象提供了一個方法--fill,可以完成轉換。具體程序如下:

dim mydataset as new dataset()
mydata.fill(mydataset)
'完成從oledbdataadapter對象到dataset的轉換
datagrid1.datasource = mydataset.tables(0).defaultview
datagrid1.databind() '完成數據幫定,顯示數據

  四. 具體的源代碼:

<%@ page language="vb" %>
<%@ import namespace="system.data" %>
<%@ import namespace="system.data.oledb" %>
<script language="vb" runat="server">
sub page_load(sender as object, e as eventargs)
dim mydataset as new dataset()
dim myoledbconnection as oledbconnection = new oledbconnection("provider=microsoft.jet.oledb.4.0;" & _
"data source=c:/2.xls;" & _
"extended properties=""excel 8.0;""")
dim myoledbcommand as oledbcommand = new oledbcommand("select * from [sheet1$]",myoledbconnection)
dim mydata as oledbdataadapter= new oledbdataadapter(myoledbcommand)

mydata.fill(mydataset)

datagrid1.datasource = mydataset.tables(0).defaultview
datagrid1.databind()
end sub
</script>

<html>
<head></head>
<body>
<asp:label id="l1" runat="server">讀取c盤根目錄下的test.xls文件,并以datagrid的形式顯示出來</asp:label>
<asp:datagrid id=datagrid1 runat="server"/>
</body>
</html>

  五. 總結

  至此一個讀取excel文件的asp.net程序就全部完成了,如果你的機器達到以上提到的運行環境,那就建立一個指向此asp.net程序的web虛擬目錄,隨便拷貝一個excel文件到c盤的根目錄,在瀏覽器運行一下程序,你就可以看到excel文件內容了。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 临颍县| 三门峡市| 江安县| 巍山| 福建省| 岫岩| 防城港市| 武乡县| 田林县| 马边| 渭南市| 普定县| 砀山县| 鄱阳县| 苗栗市| 临清市| 广饶县| 稻城县| 浦东新区| 敦煌市| 铜梁县| 佳木斯市| 博客| 松原市| 微山县| 正镶白旗| 新龙县| 时尚| 汝州市| 紫阳县| 昌江| 双城市| 开远市| 湖南省| 芮城县| 莱州市| 平南县| 古浪县| 福安市| 教育| 温泉县|