采用EPPLUS進行Excel(2007以上版本)操作還是非常方便的。其中讀取單元格值的時候,不知道大家有沒有注意到這個屬性
ew.Cells[i, col].RichText.Text; 本文中提到的問題就用到了這中獲取單元格值的方式。同時,可以通過ew.Cells[i, col].IsRichText來判斷單元格內容是否是富文本。
最近在通過EPPLUS讀取Excel文件的時候遇到這樣一個問題,在通過ew.Cells[i, 1].Value 讀取Excel單元格的值時,有的單元格得到的內容並非單元格中的文本值,而是類似這樣的一段內容:
<r xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"><t>Q/JFD 20</t></r><r ...
多方調查沒有發現有用的資料。后來新建一個Excel文件,然后把內容復制粘貼過去並把粘帖格式選擇“值和數字格式”的粘帖方式。然后讀取是正常的。讀出的內容發現,其實讀出來的這段內容是類似富文本的內容,包含樣式的信息,回頭仔細查看原文件發現的確該列單元格有不同樣式,而每次手動去掉單元格樣式會給客戶造成很大的不便。
那么,如何解決這個問題呢?
這里,我們就用到了開頭提到的方式:
if (ew.Cells[i, col].IsRichText)
cellValue = ew.Cells[i, col].RichText.Text;