在我的应用程序中,我尝试使用将 NSString 值转换为浮点数
NSString *value = [dict objectForKey:@"student_Percentage"];
float f = [value floatValue];
但我将 f 的值设为 0.00000。我尝试使用 NSNumberFormatter、NSNumber ......但仍然得到 0.00000。
在我的应用程序中,我尝试使用将 NSString 值转换为浮点数
NSString *value = [dict objectForKey:@"student_Percentage"];
float f = [value floatValue];
但我将 f 的值设为 0.00000。我尝试使用 NSNumberFormatter、NSNumber ......但仍然得到 0.00000。
如果接收方不是以浮点数的有效文本表示开始,则 floatValue 返回 0.0。
[dict objectForKey:@"student_Percentage"]
值应该是 8.9。
从字符串中删除双引号。
NSMutableString *value = [dict objectForKey:@"student_Percentage"];
[value replaceOccurrencesOfString:@"\"" withString:@"" options:NSCaseInsensitiveSearch range:NSMakeRange(0, [value length])];
float f = [value floatValue];
嘿,我认为您的 dict 值有问题。试试这个代码,它给出了正确的值。
NSString *temp = @"25.38";
float p = [temp floatValue];
NSLog(@"%f",p);
或者也许使用valueforkey
而不是objectForKey
.