有没有一种方法可以将Aspose Cell的值设置为字符串表示,同时保持其类型/样式



我们有一个程序,可以在各种文件(包括Excel(中进行模式替换,并且使用Aspose。例如,我们可能有一个PATTERN_TO_RELACE的单元格,然后我们用";6〃;或";6.0〃;或";1000.00〃;(在美国(或";1.000,00";(在英国(。

(PATTERN_TO_REPLACE也可以在公式中(。

问题是,我们必须使用Java匹配器来查找(和替换(字符串,这意味着我们正在调用cell.setValue(string(。这导致Aspose将CellValueType更改为字符串,即使它以前是数字的。

我们最初的解决方案是查看我们是否认为字符串是一个数字,然后将其转换为BigDecimal并按原样传递,但这会导致大量工作(特别是对于货币类型的本地化…(

我想做的是调用cell.getStyle((、cell.getType((,保存它们,设置值,然后返回它们,但没有cell.setType((方法。有没有一种简单的方法可以做我想做的事?

当你使用cell.setValue(String(时,它肯定会设置字符串类型。我认为您可以尝试使用重载,比如cell.putValue(String,true(。这样,如果您插入数字(作为字符串(,它将自动转换为数字并设置为数字类型。

PS。我在Aspose担任支持开发人员/福音传道者。

最新更新