讀取excel資料的問題

问题描述

在vc6.0的專案中用odbc的方法讀取excel檔的資料時仍有下列問題未解決:1.我是利用m_pRa.GetFieldValue(_T("身分證號"),Sa);將excel檔中身分證號欄的資料讀進Sa文字變數中.2.假如excel的身分證號欄全是文字欄(第一位是英文字母或中文字)便毫無問題.若是數字欄則讀進來的會是有一位小數的數字,例如原來是123的數字資料,結果Sa=”123.0”.這還沒多大問題.可是若有部份是數字,另一部份是文字,那麼數字的資料卻完全讀不到,也就是Sa=””.由於GetFieldValue()函式一定要使用文字變數Sa.不能用數字變數,至少在odbc的方法中是如此.所以請問各位vc高手到底在excel同一欄中若有數字與文字時,數字的資料要怎樣才能正確讀取得到?拜託!謝謝!

解决方案

解决方案二:
sa是CDBVariant类型的变量,可以是任意类型,估计读出来没有问题,可能是你后面的转换出问题了。
解决方案三:
你把它当字符串读出来再转化肯定没问题。
解决方案四:
老老实实的用select语句读取我用过没捷径的
解决方案五:
先謝謝各位的回答,我現在將程式列舉如下,請各位再提供詳細的解決方法,謝謝!拜託!//SaODBC驅動程式,SbDSN,ScExcel檔Sc=m_Path+"\member.xls";Sa=GetExcelDriver();if(Sa==""){AfxMessageBox(_T("找不到Excel的ODBC驅動程式!"));return;}Sb.Format(_T("ODBC;DRIVER={%s};DSN='';DBQ=%s"),Sa,Sc);m_pDa.Open(NULL,false,false,Sb);Sd="Select[會員編號],[身分證號],[姓名],[帳號]FrommemberOrderby[會員編號]";CRecordsetm_pRa(&m_pDa);m_pRa.Open(CRecordset::forwardOnly,Sd,CRecordset::readOnly);while(!m_pRa.IsEOF()){m_pRa.GetFieldValue(_T("會員編號"),Sa);S1=Fill(Sa,7);m_pRa.GetFieldValue(_T("身分證號"),Sa);//當身份證號第一碼是英文字,Sa能讀到,但當全是數字時(是公司的統編)卻讀不到AfxMessageBox(_T("sa="+Sa));m_pRa.GetFieldValue(_T("姓名"),S3);m_pRa.GetFieldValue(_T("帳號"),S4);//這裡是將讀取到的變數寫入一資料表中(程式省略)m_pRa.MoveNext();}CStringCC2::GetExcelDriver(){charC1[121];char*Buf=C1;WORDW1=120;WORDW2;if(!SQLGetInstalledDrivers(Buf,W1,&W2))return"";while(Buf[1]!=''){if(strstr(Buf,"Excel")!=0){Sa=CString(Buf);break;}Buf=strchr(Buf,'')+1;}returnSa;}就如上述當身份證全是數字時就讀不到,請大家幫忙解決,感謝!

时间: 2024-11-08 17:26:25

讀取excel資料的問題的相关文章

asp.net讀取excel問題,請大俠門幫忙啊!!!!!!!

问题描述 環境:windows2003裝有.netframework3.5機器上沒有安裝office組件目的:把excel文件當做一個數據庫,用oledbconnectionjetengine打開讀取excel中的數據出現問題:oledbException:未知錯誤出現這個錯誤的現象是:有時出現,有時不出現,代碼功能正常.出現的時候錯誤發生在conn.Open();驗證方式為windows驗證 解决方案 解决方案二:在服务器上装一个数据访问组件就行了.解决方案三:老大不讓裝啊,能裝的話就好了

c# winform資料匯出EXCEL

问题描述 各位高手:以下为我汇出EXCEL的代码:汇出的很慢,还有其它更好的办法或者是优化//初始化Excel組件Excel.Applicationexcel=newExcel.Application();Excel.WorkbookworkbookData=excel.Application.Workbooks.Add(Excel.XlWBATemplate.xlWBATWorksheet);Excel.WorksheetxlSheet=(Excel.Worksheet)workbookDat

pdfbox讀取pdf問題(高手進)

问题描述 現在公司要讀取客戶的pdf技術文件,pdf裡由好多表格組成,,每個表格前都有一個特殊的關鍵字,,我怎樣才能定位到我要讀取的表格啊,,,高手請指點 解决方案 解决方案二:没用过..帮顶~解决方案三:現在轉個方向了,怎樣把pdf裡的每一頁轉為圖片啊,,,我用C#調用pdfbox時在BufferedImageimage=page.convertToImage();報錯,,,望高手指點,,或有沒有其也更好的技術啊..解决方案四:等待答案,帮顶解决方案五:该回复于2012-04-19 15:51

將 ASP .NET WebForm 的 DataGrid 中的資料 匯出至 Microsoft Excel

datagrid|excel|web 將 ASP .NET WebForm 的 DataGrid 中的資料 匯出至 Microsoft Excel本文將逐步帶領您產生 ASP.NET WebForm 上的 DataGrid Web 伺服器控制項,然後將 DataGrid 內容匯出至 Microsoft Excel. 技術本文將說明兩種匯出 DataGrid 資料的技術: 使用 Excel MIME 類型 (或內容類型) 您可以使用伺服器端的程式碼將 DataGrid 連結至資料,然後在用戶端電腦

急急急,請使用socket programming 抓取另網站上的*.csv資料

问题描述 急急急,請使用socketprogramming抓取另網站上的*.csv資料顯示到網頁上,請高手解決答! 解决方案 解决方案二:不懂,没有用过.不过关注!解决方案三:socket我知道怎么写socketprogramming是啥东西没用过?/*兄弟下次问问题把要问题说清楚一点好不好.大家多半是到csdn闲逛的,专业答题的没几个没人长时间关注一个帖子,等你的帖子沉了就更不可能有人看见了,这样比较浪费你的分还有大家的时间.所以恳请下次发问题的时候一定要描述清楚,因为你心里想的东西不是人人都

求幫忙,如何用POI同時從EXCEL內讀取圖片和內嵌EXCEL呢,兩個單獨都可實現!

问题描述 求好人幫忙,如何同時從EXCEL內讀取圖片和內嵌EXCEL呢,兩個單獨都可實現!代碼如下:importjava.io.FileInputStream;importjava.io.FileOutputStream;importjava.util.HashMap;importjava.util.List;importjava.util.Map;importjavassist.bytecode.Descriptor.Iterator;importorg.apache.poi.hslf.use

asp.net網站發布的問題,請好心的大哥們幫忙看看.

问题描述 我用的是WinXP+IIS5.1做的一個asp.net程序,在其中有一個上傳文件的功能頁面.現在的問題是:在這個頁面中的一個DataGrid中,主要列出上傳后的文件列表,使用者點擊上傳文件名字(我做了鏈接)時,可以打開這個文件,如常見的.doc或Excel文件,其它的.zip文件則會提示是否下載.但是問題是,在點擊一個文件名的鏈接時,它會提示彈出windows驗證窗口,我查過有關IIS設置的相關資料,我在IIS中的文目錄和網站文件目錄的安全性設置了匿名訪問用戶為:IUSR_(我的機器名

Oracle常見問題集(一)

oracle 一.常見問題 1. Oracle安裝完成後的初始口令 internal/oracle sys/change_on_install system/manager scott/tiger sysman/oem_temp   2. ORACLE9IAS WEB CACHE的初始默認用戶和密碼? administrator/administrator   3. oracle 8.0.5怎麽創建資料庫 用orainst.如果有motif介面,可以用orainst /m   4. oracle

Oracle常見問題集(三)

oracle 151. 如何監控 SGA 中字典緩衝區的命中率? select parameter, gets,Getmisses , getmisses/(gets+getmisses)*100 "miss ratio", (1-(sum(getmisses)/ (sum(gets)+sum(getmisses))))*100 "Hit ratio" from v$rowcache where gets+getmisses <>0 group by p