创建JSON并格式化双值

时间:2016-01-18 11:18:00

标签: ios json swift serialization

使用NSJSONSerialization创建JSON时,有没有办法设置double值的格式?

例如:

    let dict :Dictionary<String,NSNumber> = ["key1" : 75.01, "key2" : 80.93, "key3" : 79.07, "key4" : 79.10 ]
    let JSONData = try! NSJSONSerialization.dataWithJSONObject(dict, options: .PrettyPrinted)
    let JSONText = NSString(data: JSONData, encoding: NSASCIIStringEncoding)
    NSLog("JSON string = \(JSONText!)")

我得到以下输出:

  

JSON string = {     &#34; KEY1&#34; :75.01000000000001,     &#34; KEY2&#34; :80.93000000000001,     &#34; KEY4&#34; :79.09999999999999,     &#34; KEY3&#34; :79.06999999999999   }

我想避免这些000001,0999999等 提前谢谢。

1 个答案:

答案 0 :(得分:2)

使用&#34; Float&#34;而不是&#34; NSNumber&#34;:

let dict: Dictionary<String,Float> = ["key1" : 75.01, "key2" : 80.93, "key3" : 79.07, "key4" : 79.10 ]

结果:

  

JSON string = {     &#34; KEY1&#34; :75.01,     &#34; KEY4&#34; :79.1,     &#34; KEY2&#34; :80.93,     &#34; KEY3&#34; :79.07   }