Отличающееся поведение NSNumberFormatter - PullRequest
1 голос
/ 09 марта 2010

Рассмотрим этот код:

NSNumberFormatter *nf = [[NSNumberFormatter alloc] init];
nf.numberStyle = NSNumberFormatterCurrencyStyle;

NSLocale *l = [[NSLocale alloc] initWithLocaleIdentifier:@"it_IT"];
nf.locale = l;
[l release];
nf.decimalSeparator = @",";
nf.currencySymbol = @"US$";
[nf setLenient:YES];
NSString *s = @"US$ 0,05";
double d = [[nf numberFromString:s] doubleValue];
NSLog(@"%.2f",d);`

Если я выполню это в обычном консольном приложении Cocoa (10.6 sdk), я получу вывод «0.05» на консоль отладки.

Однако, если я выполню это в среде iPhone (OS 3.1.3), я получу вывод «0.00» на консоль отладки. Я делаю что-то не так с использованием NSNumberFormatter? Или это несоответствие между двумя платформами?

1 Ответ

0 голосов
/ 09 марта 2010
NSString *s = @"US$ 0,05";

Что если убрать пробел?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...