shape.isEquation()在xlsx上生效,在xls上不生效

分别在xlsx和xls上插入公式,使用shape.isEquation()判断,在xlsx上返回true,xls上返回false,这是不是bug,还有什么方法能判断出是公式

@maochen
你愿意提供你的样例文件和可运行的测试代码吗?我们很快就会检查。

测试公式.zip (18.1 KB)

代码就是输出shape.isEquation()的值

@maochen
通过使用样例文件和以下样例代码在最新版本v25.1上进行测试,我们可以复现问题。发下读取xls文件后,调用Shape.isEquation()方法得到错误的值。

Workbook wb = new Workbook(filePath + "测试公式.xlsx");
System.out.println(wb.getWorksheets().get(0).getShapes().get(0).isEquation());

Workbook wb2 = new Workbook(filePath + "测试公式.xls");
System.out.println(wb2.getWorksheets().get(0).getShapes().get(0).isEquation());

输出结果:

true
false

我们已经在内部问题跟踪系统中打开了以下新问题单,并将根据Free Support Policies中提到的条款提供修复。

问题单号:CELLSJAVA-46240

@maochen
很高兴通知你, 我们已经修复了这个问题, 将会打包在下一个月发布的版本25.2 中。