Преобразовать строку для плавания в Objective-C - PullRequest
26 голосов
/ 07 июля 2010

Как мне преобразовать строку в число с плавающей точкой в ​​Objective-C?

Я пытаюсь умножить пару строк, возвращаемых из JSON:

float subTotal = [[[[purchaseOrderItemsJSON objectAtIndex:i] objectAtIndex:j] objectForKey:@"Price"] floatValue];

NSLog(@"%@",subTotal);

Это дает мне: (ноль) в консоли. Я знаю, что из этого массива есть допустимая строка, потому что я уже использую ее для отображения ее значения в метке.

Ответы [ 2 ]

70 голосов
/ 07 июля 2010
your_float = [your_string floatValue];

EDIT:

попробуйте это:

  NSLog(@"float value is: %f", your_float);
16 голосов
/ 30 июля 2014

Правильный способ сделать это -

NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init];
numberFormatter.numberStyle = NSNumberFormatterDecimalStyle;

float value = [numberFormatter numberFromString:@"32.12"].floatValue;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...