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

Kal*_*ana 5 java excel apache-poi

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

zmf*_*zmf 10

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

getRichStringCellValue()返回XSSFRichTextString的类型,而getStringCellValue()返回一个普通的旧java String.

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


0x6*_*C38 6

来自Apache的文档:

getRichStringCellValue():

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

getStringCellValue():

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