EPPlus可以区分Excel工作表中的空白单元格和空白文本单元格吗?

我正在使用EPPlus .NET库(v4.0.4)来解释保存的Excel工作簿。 在一个这样的工作表中,一些空单元格已经使用Excel的“撇号”技巧(也就是说,用户在这些单元格中input了单个撇号,以便Excel将它们显示为空白)设置为“文本”格式。

两个这样的单元格的示例XML如下所示:

<cr="F6" s="1" t="inlineStr"> <is> <t /> </is> </c> <cr="G6" s="1" /> 

在这里,F6有一个撇号(即,是一个空的文本单元格),G6是真正的空白。

有可能使用EPPlus读取这个“内联string”( inlineStr )属性或者区分这两个单元格吗? ExcelRange / ExcelRangeBase类具有诸如ValueFormulaStyle等属性,但是在检查表示上述两个单元格的对象时,我看不到它们之间的任何差异。

我知道我可以通过阅读原始XML或使用替代库(可能是ClosedXML或类似的)手动执行此操作,但是如果可能的话,我想使用EPPlus来执行此操作。

EPPlus使用null值来表示空单元格,并返回包含空string的单元格的空string。

这适用于读取和写入操作。

因此,如果使用epplus将空string写入单元格,那么该单元格将包含空string(因此将显示为空白,但不会等于0),而如果使用epplus将单元格的值设置为null,则在Excel中将为空(并将仍然显示为空白,但将等于0)

这同样适用于读取操作。 如果您使用了“撇号技巧”,则可以从单元格的值中读取空string,但会为空单元格的值获取空引用。