我正在使用Apache POI 3.17。
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.17</version>
</dependency>
我尝试仅处理字符串单元-但它不起作用。
不确定这是错误还是我使用的错误。
...
Cell c = row.getCell (col);
if (c != null)
{
CellType ct = c.getCellTypeEnum ();
System.out.println (ct + " vs " + CellType.STRING);
if (ct == CellType.STRING);
{
System.out.println (" equal");
}
}
...
输出:
STRING vs STRING
equal
BLANK vs STRING
equal
STRING vs STRING
equal
FORMULA vs STRING
equal
为什么什么是“相等”?
即使我将==更改为equals或compareTo也是如此。
答案 0 :(得分:2)
CellType
可以正常工作,但是在此行的结尾处有讨厌的分号(错字):
if (ct == CellType.STRING);
因此,无论条件如何评估,始终执行该块。