2013-04-29 24 views
0
float serverTime = [[[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding] floatValue]; 

NSLog(@"String: %@ Float: %f", [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding], serverTime); 

responseData是NSMutableData。通過NSURLConnection接收數據。這是返回:要將字符串變爲浮點的可變數據 - objective-c

2013-04-29 11:02:44.479 Time Test[7894:907] String: 1367247763.97 Float: 1367247744.000000 
2013-04-29 11:02:44.996 Time Test[7894:907] String: 1367247764.41 Float: 1367247744.000000 
2013-04-29 11:02:45.524 Time Test[7894:907] String: 1367247764.94 Float: 1367247744.000000 

這是怎麼回事?

+2

我要出去在這裏的肢體,並猜測它是浮點精度 – 2013-04-29 15:09:28

+0

什麼是解決方案? – objectiveccoder001 2013-04-29 15:12:22

+1

嘗試使用'double',但最終你會遇到同樣的問題。如果你可以得到你的responseData是一個整數類型,那會更準確 – 2013-04-29 15:13:14

回答

0

你必須使用double而不是整數。