1

大家好,这是我的第一个问题,我想对你来说很容易,我想把这个 NSString "42031692.7810" 转换成这样的东西:$4,2031,692.78,我有这个代码:

NSString *element = @"42031692.7810";
    NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
    [formatter setNumberStyle:NSNumberFormatterCurrencyStyle];
    [formatter setGeneratesDecimalNumbers:YES];
    [formatter setMaximumFractionDigits:2];
    NSNumber *temp = [formatter numberFromString:element];
    NSLog(@"formatter%@",[temp stringValue]);

但输出是这样的:

2012-04-19 14:43:42.467 HelloWorld[5663:f803] formatter(null)

我该如何解决这个问题???希望你能帮我!!

问候!

4

1 回答 1

2

你有 string @"42031692.7810",并且你有一个NSNumberFormatter集合来接受被样式化为货币的东西。 @"42031692.7810"不被样式化为货币。因此它正在返回nil

您必须将数字格式化程序设置为接受十进制输入,将字符串NSNumber转换NSNumberNSString.

于 2012-04-19T19:55:44.660 回答