在使用json时设置数字格式

w7t8yxp5  于 2021-05-27  发布在  Spark
关注(0)|答案(0)|浏览(280)

使用json时,有没有办法设置数字格式?
例如,此代码

Seq((1, 1.1), (2, 1e10))
  .toDF("id", "data")
  .withColumn("json", to_json(struct('data)))
  .show()

印刷品

+---+------+---------------+
| id|  data|           json|
+---+------+---------------+
|  1|   1.1|   {"data":1.1}|
|  2|1.0E10|{"data":1.0E10}|
+---+------+---------------+

但我想

+---+------+--------------------+
| id|  data|                json|
+---+------+--------------------+
|  1|   1.1|        {"data":1.1}|
|  2|1.0E10|{"data":10000000000}|
+---+------+--------------------+

当直接使用jackson时,可以将序列化程序设置为这个答案中描述的双值。有没有一种方法可以得到相同的结果时,使用Spark的 to_json 功能?似乎没有jsonoption来控制数字格式。
看看jacksongenerator的代码,序列化似乎发生在这一行。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题