我需要通過C#創建一個excel文件。我已經閱讀了一些創建XML文檔的地方是最簡單的方法嗎?我需要有多個命名標籤,並能夠指定特定的單元格是文本,日期時間,數字等...任何建議或良好的例子?使用C編譯Excel文件#
回答
您需要System.IO.Packaging API - 這將讓你按Inserting Values into Excel 2007 Cells中所述生成.xlsx文檔。 Excel 2003格式也可用於安裝了免費Microsoft Office Compatibility Pack的Excel 2003和XP。
看看NPOI:
這也得到了相當不錯的其他地方覆蓋上SO:
我們使用一個名爲Aspose工作套件。它有一個大的全功能「細胞」組件,爲我們創造奇蹟。
的Visual Studio Tools for Office中是一個很好的辦法做到這一點
這是令人沮喪很難做到,因爲微軟的推薦機制,包括使用辦公室,這在桌面上很好,但對網絡無用。
的.xls
文件的二進制格式是禮,所以微軟推出了Office 2007中
的.xslx
.xlsx
OpenXML文件的是所謂簡單 - 它只是一個ZIP容器充滿XML文件。您可以使用System.IO.Packaging
打開它並使用System.Xml
進行編輯。甚至還有一個適用於舊版Office的兼容包。
不幸的是,它只是不簡單 - .xslx
的格式是horrible beyond words。
看起來他們已經採用了16位優化的二進制.xls
格式(最初爲Windows 3.1設計),並將其序列化爲XML而不是二進制。然後,他們添加了非常愚蠢的更改,如單元格註釋實際上是VML - 這種格式應該與IE5一起丟棄!他們還在XML中添加了大量的幻數和元數據,因此您無法對其使用任何類型的轉換,因此您需要手動解析該吸盤。
最後他們讓它成爲一個完整的驢來調試,我們經常發現.xslx
文件,兼容性包報告爲損壞(沒有理由),但最新版本的Office可以打開罰款。
這裏有一個非常不錯的開源庫:SpreadsheetLight。這是一個非常好的圖書館,但是任何需要你自己挖掘和擴展文件的東西都會很痛苦。
- 1. 使用編譯C文件jni.h
- 2. 編譯C++文件使用PHP
- 3. 使用MEX編譯C++文件
- 4. 使用「gcc」編譯器編譯C++簡單文件
- 5. 使用.lst文件編譯
- 6. C++ - 預編譯頭文件
- 7. Asp.net webforms C#文件編譯
- 8. C#dll文件編譯
- 9. C - 編譯靜態文件
- 10. emacs keybinding編譯C文件
- 11. C頭文件將不使用C編譯,但將與C++
- 12. DateLastModified(ASP)和Excel文件+ ASP編譯
- 13. 使用xlrd在線Python編譯器讀取excel文件
- 14. 用dbus頭文件編譯C程序
- 15. 使用GCC將C和C++文件編譯在一起
- 16. Dev C++編譯C源文件
- 17. 如何使用一組目標文件編譯一組C文件C
- 18. 用C++編譯器編譯c代碼
- 19. 使用C#從源文件編譯WPF應用程序?
- 20. 使用Soundtouch編譯C++
- 21. 編譯C++使用PHP
- 22. 使用netbeans編譯C++
- 23. 編譯C使用CLR
- 24. C#編譯使PDB文件和文件夾的obj
- 25. 如何將Excel VSTO工作簿編譯到Excel文件中
- 26. 強制CMake使用C++編譯器將C文件與Visual Studio配合使用
- 27. 使用Java編譯器API來編譯多個java文件
- 28. weblogic 11g使用哪個編譯器(編譯器位置)編譯JSP文件?
- 29. 使用記事本++和英特爾編譯器編譯文件Fortran編譯器
- 30. 如何創建和使用C#編寫Excel .xls文件
@wcoenen -nice編輯,謝謝。 – Murph 2009-11-10 08:45:15
有沒有任何如何用'System.IO.Packaging'建立Excel的例子?我無法找到處理Excel的文檔中的任何內容。 – 2012-10-18 14:11:02
@IanBoyd有一個更好的方法(現在)去看看ClosedXML - 你可以在這裏找到:http://closedxml.codeplex.com/ – Murph 2012-10-18 15:08:30