5

我正在尝试使用 Java POI 读取存储在 Excel 工作表中的数据。我对这两种方法感到困惑,因为这两种方法都会返回存储在单元格中的字符串值。谁能解释这两种方法之间的区别?

4

2 回答 2

10

重要的线索是查看@文档并注意不同的返回类型。

getRichStringCellValue() 返回 XSSFRichTextString 的类型,而 getStringCellValue() 返回一个普通的旧 java 字符串。

您可能只想使用 getStringCellValue(),除非您正在执行诸如复制电子表格之类的操作并希望保留任何格式。如果是这种情况,getRichStringCellValue() 返回的 XSSRichTextString 对象将包含任何格式信息,例如粗体斜体

于 2013-04-23T13:40:38.703 回答
6

来自Apache 的文档

getRichStringCellValue():

将单元格的值作为字符串获取 - 对于数字单元格,我们会抛出异常。对于空白单元格,我们返回一个空字符串。对于不是字符串公式的公式单元格,我们会抛出异常。

获取字符串细胞值():

将单元格的值作为字符串获取 - 对于数字单元格,我们会抛出异常。

于 2013-04-23T13:15:40.637 回答