Mule 要在给定的18位字符串中动态放置小数点(表示金额)
我有两个变量,即数量(18个字符)和精度(2个数字)。我想根据精度值将小数点放在金额中。Mule 要在给定的18位字符串中动态放置小数点(表示金额),mule,Mule,我有两个变量,即数量(18个字符)和精度(2个数字)。我想根据精度值将小数点放在金额中。 假设amount=1000000000000000和precision=2,然后使用dwl将amount转换为100000000000000.00 请注意,由于性能问题,我不想使用全局函数 我试过了,用的是每100美元。这给了我指数1.0E15 dwl- 预期输出为{amount:10000000000000.00}请参阅有关MuleSoft的以下文档: 收益率: {“amount”:“10000000
假设amount=1000000000000000和precision=2,然后使用dwl将amount转换为100000000000000.00 请注意,由于性能问题,我不想使用全局函数 我试过了,用的是每100美元。这给了我指数1.0E15 dwl-
预期输出为{amount:10000000000000.00}请参阅有关MuleSoft的以下文档: 收益率:
{“amount”:“1000000000000000.00”}
我在下面的实现中使用了,现在这正好满足了我的需要在格式化输出之前,我只需要将数字除以10(或者根据精度值除以100或1000等)。
%dw 1.0
%output application/json
---
{
"amt" : "100123456789123456789" /"1000" as :string {format: "#"}
}
收到的输出:
{“金额”:10012345678123456.789
}
请勾选我答案旁边的绿色复选标记,将问题标记为已回答。谢谢上述解决方案在我需要精确设置数字格式的情况下有效。如果我还没有精度,我想把精度放在一些随机值的基础上。i、 我想把小数点放在数字123的第2位,我希望返回的数字是1.23。
%dw 1.0
%output application/json
---
{
amount :100000000000000000 as :string {format: "#.00"}
}
%dw 1.0
%output application/json
---
{
"amt" : "100123456789123456789" /"1000" as :string {format: "#"}
}