当前位置: 首页 > 知识库问答 >
问题:

Apache poi getCell()返回错误的值

汪建德
2023-03-14

所以我试着接受单元格值,比如“150SYMBOL150SYMBOL150SYMBOL150SYMBOL150SYMBOL150SYMBOL150SYMBOL150SYMBOL150SYMBOL150SYMBOL150SYMBOL150SYMBOL150SYMBOL150SYMBOL150SYMBOL150SYMBOL150SYMBOL150SYMBOL150SYMBOL150SYMBOL150SYMBOL150SYMBOL150SYMBOL150SYMBOL150

在某些情况下,我会纠正(150…)价值,在某些情况下接受“78.0”。起初我以为我的手机型号不对。但经过一些工作,我发现它们是一样的。同时调用方法getCellType会返回“1”,这就是CELL_TYPE_字符串。

最终,它的工作原理如下:

String value1 = getCellValue(row.getCell(0)); --150... correct value
String value2 = getCellValue(row.getCell(1)); --150... correct value
String value3 = getCellValue(row.getCell(2)); --78.0   incorrect value
 
private String getCellValue(Cell cell) {
    switch (cell.getCellType()) {
        case Cell.CELL_TYPE_STRING: //similar for other cell types
            //getting cell value based on its type
    }
}  

寻找一些建议和小贴士,因为我没有想法了,也许我错过了什么?

这就是我的excel的样子:在这里输入图像描述

p、 美国有很多“150……”VAL仅用于测试

共有1个答案

胥博文
2023-03-14

您正在使用getCell(int var1)获取单元格中的内容。但它返回Cell类的对象。您应该使用单元格类中的方法来获取Excel单元格中的值。也有类似的方法

  • getDateCellValue()
  • getNumericCellValue()
  • getStringCellValue()

根据CellType获取单元格内容。使用CellType,您可以决定如何获取单元格内容。

更新:

并对代码进行必要的更改,以获得正确的值。

小提示:你也可以在单元格内容的开头添加一个引号。然后ApachePOI将以字符串的形式获取单元格内容。将不会成为单元格内容的一部分。

 类似资料:
  • 基类控制器里有error方法,用于api的错误消息返回输出 /** * 操作错误跳转的快捷方法 * @access protected * @param mixed $msg 提示信息,若要指定错误码,可以传数组,格式为['code'=>您的错误码,'msg'=>'您的错误消息'] * @param mixed $data 返回的数据 * @par

  • 我有一个日历视图,这是我的代码 当我点击“周一”时,=5和=Friday。当我点击周三时,=7和=Sunday。 我的日历视图中的一周的第一天是2,所以星期一。Toast向我展示了良好的价值。 有什么问题吗?

  • 我正在制作一个程序,将包含有关UML图的信息的.xml文件转换为实际的UML图。要绘制箭头,我需要获得我正在使用的VBox的高度(它们是锚窗格的子级)。我做了以下事情: 但是getHeight()值返回了错误的值。应该在40左右,但我得了32。 我怎样才能解决这个问题?

  • 当我尝试在运行时获取特定android风格的gcm_defaultSenderId时,它没有提供正确的值。 例如:我得到了味道tst,google-services.json看起来像这样。 json文件放在tst/google-services.json中。当我尝试使用R.string访问gcm_defaultSenderId时。gcm_defaultSenderId在运行时,返回值为:98765

  • 我是JS的学生。我有一段代码返回了一个错误。 这是返回的语法错误。你们能解释一下我做错了什么吗?

  • 问题内容: 这段代码: 退货 它不应该将绝对值返回为吗? 问题答案: 是,但32位整数可以包含的最大值是。尝试以32位int表示将有效地“翻转”到。这是因为,使用符号的整数时,两个补的二进制表示和是相同的。但是,这不是问题,因为超出了范围。 有关此问题的更多信息,您可能需要查看Two的补语中的Wikipedia文章。