使用 JSON 解析来自 Web 服务的浮点数
Posted
技术标签:
【中文标题】使用 JSON 解析来自 Web 服务的浮点数【英文标题】:parsing a float from web-service with JSON 【发布时间】:2011-05-02 23:32:31 【问题描述】:解析一个 NSString 我使用了这个:
NSString *adress=[stations objectForKey:@"adress_station"];
浮点数怎么样,我应该怎么称呼它,我尝试这样做:
float distance=[stations objectForKey:@"distance"];
但我有一个错误:
incompatible type in initialization
我不想把它放在 NSString 中,我需要它作为浮点数,因为我在其他操作中需要它:)
【问题讨论】:
【参考方案1】:float distance = [[stations objectForKey:@"distance"] floatValue];
objectForKey 返回一个对象(在这种情况下,我假设一个 NSString)。
在 NSString 上调用 -floatValue
将获取浮点数据。
【讨论】:
非常感谢,它就像一个魅力,但是当我从网络服务收到它时,它用一个数字四舍五入(即:7.1)但是当我在 iPhone 上显示它时它不再四舍五入了(7.057124) :)) 这将取决于您在解析该值后对它执行的操作。需要详细说明吗? 收到的值是例如 7.057124,我希望它是 7.1 :) @Malek 您真的希望它表示为 7.1 还是仅显示为 7.1?使用 %0.1f 的格式化程序打印它会为您提供显示所需的 7.1。 NSLog(@"%0.1f", 距离);否则,要实际舍入浮点数,您可以使用以下内容: distance = roundf(10 * distance) / 10; 不,实际上我想稍后使用它进行更多计算,而不仅仅是用于显示:)以上是关于使用 JSON 解析来自 Web 服务的浮点数的主要内容,如果未能解决你的问题,请参考以下文章
2021-12-10:64位的浮点数和64位的有符号整数,哪个能表示的数据个数多? A.整型多。 B.浮点型多。 C.与平台有关。 D.一样多。 来自qq群。