最近有個需求是讀取XLS裡的資料,要轉換成固定的HTML格式。如果人工轉的話太麻煩了點,畢竟是固定的格式,用程式來做的話準確又快速。程式產生後,再手動檢查修改就好了。
搜尋了一下資料,c# winform讀取excel的方式有幾種:
1、直接使用OLE讀取EXCEL。
但是這種需要電腦上安裝了EXCEL。
產生的相關代碼,可能看這篇文章 :
c#產生XLS http://blog.csdn.net/dotneterbj/article/details/3745336
相關介面的話也有文章參考:
Datagridview中控制項textbox,支援特殊字元(@.()錄入解決辦法 http://blog.csdn.net/shangxinyu123/article/details/7828572
C# WinForm開發系列 - DataGridView http://www.cnblogs.com/peterzb/archive/2009/05/29/1491891.html
2、ExcelDataReader
ExcelDataReader可以讀取 Microsoft Excel 檔案 ('97-2007),支援Windows .Net Framework 2 +、 Windows Mobile with Compact Framework
、 Linux, OS X, BSD with Mono 2。項目地址:http://exceldatareader.codeplex.com/
ExcelLibrary 是一個比較精緻的 Excel 讀寫組件,還是由國人開發的。可以讀寫 xls 和 xlsx 格式的 Excel。支援簡單的公式,可插入圖片,對于格式的設定也不是很豐富,可設定儲存格寬度,資料格式化顯示。對字型,前景、背景色進行設定是它的局限性。 雖比不上 NPOI,但作為小巧的用來讀寫純資料內容的
Excel 還是很高效的。
3、NPOI
NPOI 是 POI 項目的
.NET 版本。POI是一個開源的Java讀寫Excel、WORD等微軟OLE2組件文檔的項目。
使用 NPOI 你就可以在沒有安裝 Office 或者相應環境的機器上對 WORD/EXCEL 文檔進行讀寫。
利用NPOI開源的讀寫Excel、WORD等微軟OLE2組件讀寫execl,控制樣式或儲存格 http://blog.csdn.net/smartsmile2012/article/details/8111119
NPOI on SNSQQ群: 20144214, 189925337Twitter: http://twitter.com/tonyqus 新浪微博: http://t.sina.com.cn/npoiNPOI教程: http://tonyqus.sinaapp.com/
System RequirementVS2010 with .NET 4.0 runtime
VS2005 or VS2008 with .NET 2.0 Runtime (SP1)
vs2003 with .NET 1.1
medium trust environment in ASP.NET
4、MyXLS
MyXLS 是一個快速和簡單的讀寫 Excel 檔案的 .NET 組件,可用在 ASP.NET 網站和 .NET 應用程式中,無需安裝 Excel
程式,支援 Excel 97 以及以後的版本。
目前MyXls已經實現了儲存格(cell)的格式設定,包括文本顏色、文字大小、字型、單位格邊框、底色、列寬、行高,合併儲存格,多個sheet頁等功能。
MyXls:http://myxls.in2bits.org/Downloads.ashx
http://sourceforge.net/projects/myxls/files/
用MyXls產生Excel報表(C#)http://www.oschina.net/code/snippet_156249_4855
C#產生Excel報表 用MyXls組件產生更完美 http://www.cnblogs.com/lucky2007/archive/2008/04/15/1154752.html
考慮了一下,可能要設定儲存格的樣式,還是選擇NPOI或者是MyXls吧。(QQ:1508496092,大家有讀取XLS的問題,可以交流一下哦)。
MYXLS好像沒更新了,讀取能力也比不上NPOI。所以選擇NPOI是一個不錯的選擇,學習中。。。