亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? excel.txt

?? Excel文件的處理
?? TXT
字號:
    前言   
      由于種種需要直接進行讀取Excel文件數據,然而在網上Search多次也沒有找到好的方法,   
  一般就通過ODBC或OLE方式進行讀取,但這兩種方法都具有局限性.(我相信大家都很清楚)。   
  怎么辦呢?沒辦法了,只好選擇最艱難的路了--分析Excel文件格式。   
    介紹   
      MS   Excel是眾所周知的電子表格處理軟件。Excel文件格式是特定的BIFF(Binary   Interchange   File   Format),
BIFF里存儲了很多記錄,第條記錄包括記錄頭和記錄體。記錄頭是4byte,前兩位指定記錄類型的代碼(opcode),
后兩位指定記錄長度;記錄體是存儲該記錄的實際數據。   
  比如:     
    
  BOF   record   
                        |     Record   Header         |         Record   Body         |   
  Byte               |     0         1         2         3   |     0         1         2         3   |   
                        -----------------------------------------   
  Contents       |   09   |   00   |   04   |   00   |   02   |   00   |   10   |   00   |   
                        -----------------------------------------   
                        |   opcode     |   length     |   version   |     file       |   
                        |                   |                   |     number   |     type       |   
  記錄頭:   
  opcode:   09h   is   BOF;   
  length:   04h   record   body   is   4   bytes   long;   
  記錄體:   
  version   number:02h   is   version   number   (2   for   the   initial   version   of   Excel)   
  file   type:10h   is   a   worksheet   file;   
  具體可參考MS   Excel   File   Format。   
    
    描述   
  以下是對本文程序簡單描述。     
    
              第一步:打開文件   
  CFile   f;   
  CFileException   e;   
    
  //   打開文件   
  if   (!f.Open("D:\\Book1.xls",   CFile::modeRead,   &e))   
  {   
  TCHAR   szError[1024];   
  e.GetErrorMessage(szError,   1024);   
  AfxMessageBox(szError);   
  return;   
  }   
  第二步:讀取版本號   
  //   讀取版本   
  while   (dwPos   <   dwLen)   
  {   
  nRead   =   f.Read((void*)&RecNo,   2);   
  if   (RecNo   ==   XL_BOF)     
  {   
  WORD   Ver,   Type;   
  f.Read((void*)&RecLen,   2);   
  f.Read((void*)&Ver,   2);   
  f.Read((void*)&Type,   2);   
  f.Seek(RecLen,   CFile::current);   
    
  int   ver   =   0;   
  switch   (Ver)   
  {   
  case   BIFF7:   
  ver   =   7;   
  break;   
  case   BIFF8:   
  ver   =   8;   
  AfxMessageBox("Biff8");   
  break;   
  }   
    
  int   type   =   0;   
  switch   (Type)   
  {   
  case   WORKBOOK:   
  type   =   5;   
  AfxMessageBox("Workbook");   
  break;   
  case   WORKSHEET:   
  type   =   16;   
  AfxMessageBox("Worksheet");   
  break;   
  case   CHART:   
  type   =   32;   
  AfxMessageBox("Chart");   
  break;   
  }   
    
  break;   
  }   
  dwPos   =   f.GetPosition();   
  }     
  第三步:讀其它數據   
  f.SeekToBegin();   
  dwPos   =   f.GetPosition();   
  //   讀表格數據   
  while   (dwPos   <   dwLen)   
  {   
  nRead   =   f.Read((void*)&RecNo,   2);   
  switch   (RecNo)   
  {   
  case   XL_BOF:   
  {   
  f.Read((void*)&RecLen,   2);   
  AfxMessageBox("Bof");   
  }   
  break;   
  case   XL_BOUNDSHEET:   
  {   
  DWORD   temp;   
  BYTE   visi;   
  BYTE   type;   
  TCHAR   name;   
    
  f.Read((void*)&RecLen,   2);   
  f.Read((void*)&temp,   4);   
  f.Read((void*)&visi,   1);   
  f.Read((void*)&type,   1);   
  f.Read((void*)&StrLen,   2);   
  f.Read((void*)&name,   StrLen);   
    
  char   buf[128];   
  memset(buf,   0x0,   128);   
  strncpy(buf,   &name,   StrLen);   
    
  AfxMessageBox(buf);   
  }   
  break;   
  case   XL_DIMENSION:   
  f.Read((void*)&RecLen,   2);   
  f.Seek(RecLen,   CFile::current);   
  AfxMessageBox("Dimension");   
  break;   
  case   0xE2:   //   INTERFACED   
  f.Read((void*)&RecLen,   2);   
  AfxMessageBox("e2");   
  break;   
  case   XL_SST:   
  f.Read((void*)&RecLen,   2);   
  f.Seek(RecLen,   CFile::current);   
  AfxMessageBox("SST");   
  break;   
  case   XL_NUMBER:   
  f.Read((void*)&RecLen,   2);   
  AfxMessageBox("Number");   
  break;   
  case   XL_STRING:   
  f.Read((void*)&RecLen,   2);   
  AfxMessageBox("String");   
  break;   
  case   XL_RK:   
  f.Read((void*)&RecLen,   2);   
  AfxMessageBox("RK");   
  break;   
  case   XL_LABEL:   
  {   
  f.Read((void*)&RecLen,   2);   
  AfxMessageBox("Label");   
  }   
  break;   
  case   0xD6:   
  f.Read((void*)&RecLen,   2);   
  AfxMessageBox("RString");   
  break;   
  case   XL_EOF:   
  dwPos   =   dwLen;   
  AfxMessageBox("Eof");   
  break;   
  default:   
  nRead   =   f.Read((void*)&RecLen,   2);   
  if   (nRead   ==   0)   
  dwPos   =   dwLen;   
  break;   
  }   
  }   
  第四步:關閉文件   
  f.Close();         
    結束   
  本方講述的是獨立于MS   Office系統,分析Excel文件格式并讀取其數據。上述程序只讀取最基本的信息。若需應用還需更完整的分析(我也在進行中.),當然讀取Excel文件方法有多種,在這里只講述了我使用的方法,   
  希望與各們朋友多交流!   

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产视频在线| 亚洲欧美另类在线| 26uuu国产日韩综合| 欧美xxxxx牲另类人与| 成人高清在线视频| 亚洲一区二区三区四区五区中文 | 国产一区二区精品久久| 亚洲精品在线观看视频| 不卡的av中国片| 蜜桃视频在线观看一区| 国产精品伦一区二区三级视频| 91视视频在线直接观看在线看网页在线看 | 欧美精选一区二区| 成人性生交大片免费看中文| 亚洲丝袜美腿综合| 在线播放日韩导航| av不卡免费电影| 免费美女久久99| 亚洲一区视频在线| 亚洲欧洲精品一区二区三区| 欧美一二三在线| 欧美日本一道本| 欧美日韩在线精品一区二区三区激情 | 国内成+人亚洲+欧美+综合在线| 午夜激情综合网| 亚洲国产精品人人做人人爽| 久久青草欧美一区二区三区| 制服丝袜亚洲播放| 欧美二区三区91| 成人网页在线观看| 国产精品自拍网站| 丰满亚洲少妇av| 大白屁股一区二区视频| 欧美体内she精视频| 国产欧美一区二区三区在线老狼| 狠狠色狠狠色综合日日91app| 国产亚洲精品资源在线26u| 亚洲欧美影音先锋| 久久成人羞羞网站| 青青草97国产精品免费观看无弹窗版| 国产日韩欧美一区二区三区乱码| 99vv1com这只有精品| 在线观看免费亚洲| 国产喂奶挤奶一区二区三区| 亚洲午夜久久久| 成人精品电影在线观看| 日韩视频一区二区三区| 亚洲精品ww久久久久久p站| 国产精品一区二区在线播放| 欧美日韩激情一区| 国产凹凸在线观看一区二区| 91论坛在线播放| 成人性生交大合| 成人激情免费网站| 成人av午夜影院| 韩国成人在线视频| 日韩—二三区免费观看av| 亚洲伦理在线免费看| 老司机精品视频在线| 国产 欧美在线| 色香蕉久久蜜桃| 成人免费观看视频| aa级大片欧美| 欧美日韩久久久一区| 欧美日本精品一区二区三区| 91亚洲精品乱码久久久久久蜜桃| 粉嫩av一区二区三区粉嫩| 午夜视频在线观看一区| 国产精品18久久久久久vr| 色国产精品一区在线观看| 麻豆精品久久精品色综合| 国产精品视频在线看| 日韩欧美aaaaaa| 1024国产精品| 日本欧美一区二区三区| 视频精品一区二区| 欧美精三区欧美精三区| 日韩av中文在线观看| 日韩三级视频在线观看| 夫妻av一区二区| ●精品国产综合乱码久久久久 | 欧洲一区二区三区在线| 偷拍一区二区三区四区| 国产一区二区日韩精品| 欧美一区二区三区公司| 伊人性伊人情综合网| 欧美在线免费视屏| 午夜av电影一区| 欧美主播一区二区三区| 久久久精品影视| 国产日产欧美一区二区视频| 亚洲成人动漫在线免费观看| 久久66热re国产| 欧美日韩中字一区| 日本一区二区成人| 午夜久久久影院| 欧美夫妻性生活| 天天影视网天天综合色在线播放| 91国偷自产一区二区开放时间 | 亚洲高清中文字幕| 欧美一级日韩不卡播放免费| 激情久久五月天| 亚洲色图制服丝袜| 色综合天天综合狠狠| 亚洲人xxxx| 日韩欧美国产午夜精品| 99精品黄色片免费大全| 日韩成人一区二区| 国产精品色呦呦| 777色狠狠一区二区三区| 国产成人日日夜夜| 丝袜亚洲另类欧美| 久久亚洲精品小早川怜子| 日韩制服丝袜先锋影音| 一本久道中文字幕精品亚洲嫩| 亚洲国产岛国毛片在线| 国产精品99久久久久久有的能看| 国产网站一区二区| 久久福利视频一区二区| 欧美激情资源网| 精品国产免费一区二区三区四区| 激情文学综合网| 国产精品天美传媒| 91激情在线视频| 亚洲18色成人| 一区二区三区.www| 欧美韩日一区二区三区四区| 欧美高清hd18日本| 国产精品资源站在线| 国精产品一区一区三区mba视频 | 亚洲观看高清完整版在线观看| √…a在线天堂一区| 国产精品国产三级国产普通话三级| 日韩午夜激情av| 久久久精品黄色| 国产精品美女久久久久久久网站| 久久久久久免费网| 国产精品蜜臀av| 亚洲欧美日韩精品久久久久| 亚洲精品日产精品乱码不卡| 国产精品狼人久久影院观看方式| 国产亚洲1区2区3区| 亚洲丝袜另类动漫二区| 性欧美大战久久久久久久久| 免费高清在线一区| 国产成人av电影| 欧洲一区在线电影| 国产亚洲女人久久久久毛片| 18欧美亚洲精品| 免费三级欧美电影| 一本色道久久加勒比精品 | www.欧美色图| 欧美一区二区在线观看| 国产精品污污网站在线观看| 亚洲一区在线播放| 成人午夜av影视| 亚洲精品一区二区三区福利| 中文字幕亚洲成人| 国产露脸91国语对白| 欧美午夜精品一区| 中文字幕一区二区三区在线观看 | 91精品国产综合久久婷婷香蕉| 国产欧美精品一区| 久久草av在线| 精品1区2区3区| 一区二区三区欧美| www..com久久爱| 亚洲精品在线观看视频| 偷窥少妇高潮呻吟av久久免费| 色哟哟欧美精品| 亚洲欧美欧美一区二区三区| 国产精品亚洲一区二区三区在线| 5月丁香婷婷综合| 亚洲一区二区三区精品在线| 成人小视频在线| 亚洲丝袜精品丝袜在线| 972aa.com艺术欧美| 亚洲欧洲成人精品av97| 国产传媒欧美日韩成人| 精品国产乱码久久久久久蜜臀| 亚洲 欧美综合在线网络| 欧美中文字幕一区二区三区亚洲| 亚洲色图一区二区| 一本久道中文字幕精品亚洲嫩| 1024成人网| 精品黑人一区二区三区久久| 亚洲一区二区三区不卡国产欧美| 在线观看日韩高清av| 亚洲成av人片一区二区梦乃| 欧美日韩一区二区三区高清| 亚洲一区二区高清| 777奇米四色成人影色区| 奇米一区二区三区| 日韩一级黄色片| 成人h动漫精品一区二区| 国产精品日韩精品欧美在线| 99精品视频一区二区| 日韩精品一级二级 | 国产福利一区二区| 亚洲欧美日韩国产手机在线|