POI HSSFCell类的getRichStringCellValue()和getStringCellValue()方法有什么区别?

时间:2013-04-23 13:11:58

标签: java excel apache-poi

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

2 个答案:

答案 0 :(得分:10)

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

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

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

答案 1 :(得分:6)

来自Apache's Documentation

<强> getRichStringCellValue():

  

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

<强> getStringCellValue():

  

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