以下是我的用于读取Excel工作表内容的Java代码。
String urlcnt="";
for (Row row : sheet) {
{
Cell firstCell = row.getCell(0);
urlcnt=firstCell.getRichStringCellValue();}
在编译以上代码时,出现以下错误。
ReadExcel.java:18: incompatible types
found : org.apache.poi.ss.usermodel.RichTextString required: java.lang.String
urlcnt=firstCell.getRichStringCellValue();//This line is the cause for the error
如果我只打印单元格的值,而不是将getRichStringCellValue()存储在字符串中,它就可以正常工作。但是我继续将其存储在字符串中以进行进一步处理,出现了问题。
请让我知道要进行什么处理。
最佳答案
该错误是因为getRichStringCellValue()
返回HSSFRichTextString或XSSFRichTextString(取决于您的单元格是HSSFCell还是XSSFCell),并且您将其分配给String
根据您的进一步处理-
您要在HSSFRichTextString上调用applyFont
还是clearFormatting
吗?
然后将其存储在HSSFRichTextString / XSSFRichTextString中。
如果您实际上只想要String文本,请使用POI API中的getString()方法
根据您的评论更新
用作
urlcnt=firstCell.getRichStringCellValue().getString();