最近做了個小的條碼,涉及要將excel中的資料讀取出來並以條碼的格式顯示
實驗目的:列印條碼標籤以供標識,掃瞄
實驗點:1.excel 的讀取
2.條碼圖形繪製
3.列印
點一:excel 匯入:
string strconn = "provider=microsoft.jet.oledb.4.0;data source=" + filepath + ";extended properties='excel 5.0;hdr=no;imex=1'";
oledbconnection conn = new oledbconnection(strconn);
oledbdataadapter oada = new oledbdataadapter("select * from [s$]", strconn);
dataset ds = new dataset();
oada.fill(ds);
注意 strconn 後面extended properties='excel 5.0;hdr=no;imex=1'部分,首先,是用『』引起來否則可能會出現異常:「找不到可安裝的isam 」。
hdr=no 代表不包含第一行資料,yes 代表包含第一行資料《是no 不是false 》
imex 的數值有:「0,1,2」三種,0 代表「當前模式為匯出模式」,這個模式開啟的excel 檔案只能用來做「寫入」用途;
1代表「當前的模式為匯入模式」,這個模式開啟的excel檔案只能用來做「讀取」用途;
2代表「鏈結模式」,這個模式開啟的excel檔案可同時支援「讀取」與 「寫入」用途;
點二:條碼顯示
code39模式,**就不在此顯示了
關鍵 public imgdrawing()
3. 列印:
設計方案有二,乙個是動態新增控制項,通過table來控制控制項顯示的位置,然後用微軟自帶的網頁列印,這樣方便一點;另乙個是將以二進位制格式存入資料庫,然後通過水晶報表來繫結實現,這樣可能涉及的訪問以及讀取相對稍微麻煩一點;
測試過程中遇到乙個小問題,本來打算用水晶報表來實現,dataset 都配置好了,後來嫌麻煩,就換方案了,然後dataset 沒有刪除,結果在讀取excel 繫結的時候ds.table[0] 始終沒有資料,後來試了一下ds.table[1] 這個時候有資料了,後來整理程式時候把dataset 刪除了,程式報錯,又改回成ds.tables[0]才可以,可能預設填充不一樣吧;
心得體會:凡事只有親自做了之後才知道有很多細節要注意!!技術有待加強,革命尚未成功,同志依然需努力哇!!
Excel資料匯入到資料庫
使用表單檔案域 input type file 時,要讓form能夠傳遞檔案的話,必須要在form標籤中加入enctype multipart form data 後台 var contents oldrow 內容 tostring trim if contents.length 0 else if...
Excel批量匯入到資料庫
using system using system.collections.generic using system.linq using system.web using system.web.ui using system.web.ui.webcontrols using system.data...
Excel資料匯入到oracle資料庫
1 將excel檔案儲存為 csv格式。2 新建乙個 ctl檔案,如下 load data infile d csv trailing nullcols id,name,age 3 開啟執行,輸入cmd,開啟命令提示符,輸入命令 sqlldr userid system test netservic...