【问题标题】:Golang JSON Unmarshal serialized numberGolang JSON Unmarshal 序列号
【发布时间】:2016-08-21 19:46:40
【问题描述】:

我有一个关于 json.Unmarshal 的问题。 游乐场示例https://play.golang.org/p/3d0nUv7PSJ

问题是:JSON 不会将“1”解组为浮动。我的意思是“1”是一个序列化的 JSON,它应该是一个数字。我是不是做错了什么?:D

【问题讨论】:

    标签: json go unmarshalling


    【解决方案1】:

    在 JSON 中,"1" 是一个字符串。如果您在示例中改用 1,它会被正确解组为浮点数。

    游乐场:https://play.golang.org/p/60symMsRSW

    【讨论】:

    • "1"serialized JSON 字符串
    • 正确。我不确定你想要什么。 "1" 是一个字符串,所以它被解组为一个字符串。如果你想要一个浮点数,你需要解组一个数字(例如1)。
    • 例如:a:=1; Marshal > "1" - 这是一个 marshalled 整数。我想通过 "1" 进行解组 - 我希望 float.
    • 如果你编组1,你会得到一个值为1的字符串。如果你随后解组它,你将得到一个值为 1 的浮点数。
    • 但是marshalled 变量是一个字节数组,看起来像"1"。 Unmarshal 返回string :D
    猜你喜欢
    • 1970-01-01
    • 2015-05-13
    • 2023-02-05
    • 2015-03-15
    • 1970-01-01
    • 1970-01-01
    • 2013-06-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多