我正在尝试使用Java POI读取存储在Excel工作表中的数据。我对这两种方法感到困惑,因为这两种方法都会重新生成存储在单元格中的字符串值。谁能解释这两种方法之间的区别呢?
答案 0 :(得分:10)
重要的线索是查看@ documentation并注意不同的返回类型。
getRichStringCellValue()返回XSSFRichTextString的类型,而getStringCellValue()返回一个普通的旧java字符串。
您可能只想使用getStringCellValue(),除非您正在复制电子表格并希望保留任何格式。如果是这种情况,getRichStringCellValue()返回的XSSRichTextString对象将包含任何格式信息,如粗体或斜体。
答案 1 :(得分:6)
<强> getRichStringCellValue():强>
将单元格的值作为字符串获取 - 对于我们抛出的数字单元格 例外。对于空白单元格,我们返回一个空字符串对于formulaCells 这不是字符串公式,我们抛出异常。
<强> getStringCellValue():强>
将单元格的值作为字符串获取 - 对于我们抛出的数字单元格 异常。