Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 抑制JSLT中的科学/指数表示法_Java_Json - Fatal编程技术网

Java 抑制JSLT中的科学/指数表示法

Java 抑制JSLT中的科学/指数表示法,java,json,Java,Json,我正在转换一个Json文档,其中包含一个值为30000000.00的数字字段 我正在使用以下规范在Java中进行转换(在相关行之后我已截断): 生成的金额字段为3.0E7,下游消费者不接受该字段 有人知道是否有一个格式化函数可以用来抑制指数符号吗 谢谢 David这实际上不是JSLT问题。因为你的转变说: "amount" : .amount, JSLT根本没有改变金额。输出中将包含传递给JSLT的相同的JsonNode对象。实际上是同一个对象——它们将使用==进行测

我正在转换一个Json文档,其中包含一个值为30000000.00的数字字段

我正在使用以下规范在Java中进行转换(在相关行之后我已截断):

生成的金额字段为3.0E7,下游消费者不接受该字段

有人知道是否有一个格式化函数可以用来抑制指数符号吗

谢谢


David

这实际上不是JSLT问题。因为你的转变说:

  "amount" : .amount, 
JSLT根本没有改变金额。输出中将包含传递给JSLT的相同的
JsonNode
对象。实际上是同一个对象——它们将使用
==
进行测试

这是关于Jackson是如何序列化十进制文本的

请注意,
3.0E7
30000000.00
是相同的数字,因此这纯粹是一个语法问题。实际的基本数字是相同的

您可以尝试在
ObjectMapper
中设置,告诉Jackson不要使用科学记数法

  "amount" : .amount,