我需要讀取excel中單元格中可用的格式信息。 Excel文件可能包含一個文本類似「某些示例文本」的單元格。每個單詞都會有不同的格式信息。就像單詞「某些」可能是粗體的,並具有不同的字體顏色和大小。下一個詞可能有不同的一個。如何讀取excel單元格格式(.XLS和.XLSX)
我們可以讀取單個單元格值的單個格式設置信息嗎?如果是的話,請讓我知道如何去做。
我曾經使用NPOI和OpenXML SDK 2.5,沒有運氣。不希望使用excel interop,因爲這將在服務器中處理。
我需要讀取excel中單元格中可用的格式信息。 Excel文件可能包含一個文本類似「某些示例文本」的單元格。每個單詞都會有不同的格式信息。就像單詞「某些」可能是粗體的,並具有不同的字體顏色和大小。下一個詞可能有不同的一個。如何讀取excel單元格格式(.XLS和.XLSX)
我們可以讀取單個單元格值的單個格式設置信息嗎?如果是的話,請讓我知道如何去做。
我曾經使用NPOI和OpenXML SDK 2.5,沒有運氣。不希望使用excel interop,因爲這將在服務器中處理。
你說的是從小區讀取富文本值。它將得到NPOI 2.0最終版本的支持。發佈將在第一季度發生,2014年
以下是對您的問題的完整「黑客答案」。
我做了這樣的單細胞小Excel文件:
我保存的文件,並關閉它。接下來,我將文件的擴展名從.xlsx更改爲.zip - 這允許您打開它並查看內容。在名爲xl
的子文件夾中,您會找到一個名爲「sharedStrings.xml」的文件,其中包含工作簿中的所有字符串及其在單元格中的格式。這是一個巨大的數組 - 這樣做是爲了在多個單元格中輸入相同的值時,它只存儲一次。通過這個文件,以獲取在所有細胞的所有字符串,以及它們的格式工作...
對於這個特定的細胞中,sharedStrings.xml文件的內容開始列如下:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<sst xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" count="1" uniqueCount="1">
<si>
<r>
<t xml:space="preserve">This </t>
</r>
<r>
<rPr>
<b/>
<sz val="11"/>
<color theme="1"/>
<rFont val="Calibri"/>
<family val="2"/>
<scheme val="minor"/>
</rPr>
<t>cell</t>
</r>
<r>
<rPr>
<sz val="11"/>
<color theme="1"/>
... etc
通過閱讀本文件,您將能夠重新構建格式化的所有字符串。必須有一個更好的辦法...
是的,這是在Windows平臺上。我正在使用.NET 4.0 –