0

我知道您可以设置日期格式,但是您如何设置其他特定于语言环境的内容,例如十进制数字格式?(我的意思是逗号与点)

4

1 回答 1

4

简短的回答:你没有。

您似乎对数字的文本表示和实际数值有些混淆。

虽然 JSON 是一种基于文本的数据交换格式,但 JSON 中的数字(相对于字符串)是一个数值,不受语言环境的影响。JSON 规范的第 2.4 节提供了具体定义(强调我的):

2.4. 数字

数字的表示类似于大多数
编程语言中使用的表示。一个数字包含一个整数部分,它
可以以可选的减号为前缀,其后可以是小数部分和/或指数部分。

不允许使用八进制和十六进制形式。前导零是不允许的。

小数部分是小数点后跟一位或多位数字。

指数部分以大写或小写字母 E 开头,
后跟一个加号或减号。E 和可选
符号后跟一个或多个数字。

不允许使用不能表示为数字序列的数值
(例如 Infinity 和 NaN)。

鉴于上述情况,诸如此类的{"my_double":3,2}内容不是有效的 JSON。{"my_double":3.2}是。

解析 JSON 时,解析器会将数字存储为原始数据类型(intdouble)。然后,您的语言环境将使用将它们转换为字符串的常规方法正确显示它们;Integer.toString(myInt),String.valueOf(myDouble)等。

于 2013-10-19T15:50:38.453 回答