【发布时间】:2013-03-22 12:01:11
【问题描述】:
我的简单 RubyMotion 代码:
data = DataParser.parse(url)
error_ptr = Pointer.new(:object)
json = NSJSONSerialization.JSONObjectWithData(data, options: 0, error: error_ptr)
url 是一个天气 API,它提供带有温度的 JSON,例如 { "temp_c":22.4, ... }。奇怪的是,浮点 22.4 被转换为 22.3999938964844。
如果我检查data.to_s,温度读数为22.4,所以我认为错误在NSJSONSerialization.JSONObjectWithData 内。
- 谁能证实这一点?
- 对此有通用解决方案吗?
我不想强制对所有浮点数进行舍入。
【问题讨论】:
标签: objective-c ruby json rubymotion rounding-error