繁体   English   中英

有没有办法在保持其类型/样式的同时将 Aspose Cell 的值设置为字符串表示?

[英]Is there a way to set the value of an Aspose Cell to a string representation while keeping its type/style?

我们有一个程序可以在各种文件(包括 Excel)中进行模式替换,并且正在使用 Aspose。 例如,我们可能有一个PATTERN_TO_REPLACE单元格,然后我们将其替换为“6”或“6.0”或“1,000.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) 这样的重载。 这样,如果您插入数字(作为字符串),它将自动转换为数字并将其设置为数字类型。

附注。 我在 Aspose 担任支持开发人员/布道者。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM