C語言操作Excel表格


上網查找了好多的資料發現C語言不能操作Execl表格,說是比較用C++語言好操作,想了解更多請點此鏈接:C++操作Excel表格

接下來介紹下一位學長介紹給我的方法,比較粗俗,但還是挺實用的。


第一步:先實用C語言創建*.xls的后綴文件,之后把這個文件當做普通的txt文件打開來操作。

第二步:對表格的處理,使用C語言打開表格后,文件指針指向整個表格的第1行第1列。假如想給它的同行的下一個單元(第1行第2列)寫數據,使用"\t";假如想給它的下一行同列(第2行第1列)寫數據,使用“\n”。


具體的示例如下代碼:

  1. #include <stdio.h>  
  2.   
  3. void writeExcel(void ) {  
  4.       
  5.     FILE *fp = NULL;  
  6.     int t;  
  7.     char ch;  
  8.   
  9.     fp = fopen("F:\\test.xls", "w");  
  10.       
  11.     for (int i = 0; i < 10; i++) {  
  12.         printf("please input:");  
  13.         scanf("%d %c", &t, &ch);  
  14.         fprintf(fp, "%d\t%c\n", t, ch);  
  15.     }  
  16.     fclose(fp);  
  17.   
  18. }  
  19.   
  20. int main() {  
  21.   
  22.     writeExcel();  
  23.   
  24.     return 0;  
  25. }  


輸入數據:


運行結果:


表格里的數據:


c語言或者php按writeExcel()函數來操作的,建議在使用標准輸入前,先把輸入緩存區清空,免得得到的結果不是期望的,清空辦法如此:setbuf(stdin,NUL); 還有其他方法,建議大家多去網站搜去,且自己親自試驗。

假如把上邊的文件名F:\\test.xls 改成F:\\test.csv 的話,此時等數據寫完,可以單擊右鍵使用”寫字板“的方法打開,打開得到按行("\n")分割,每行里每個單元格是按逗號(”,“)分割的。示例如下:
c語言操作csv.csv 的表格使用默認方式為wps或Excel打開,內容如下:


c語言操作csv.csv 的表格使用寫字板的方式打開,內容如下:

通過這么一對比,其實它csv里邊就是這么存儲的.故可以這么推測理解Excel表格里的格式(個人見解,僅供學習參考)。


最近學習了php語言,面向對象的語言還是牛,有直接操作表格的函數,或者是類。建議學習一下php直接操作表格csv格式,這種方式比較通用。(鏈接:php操作csv表格


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM