在我写的iOS应用程序中,我收到一个带有价格字符串表示的json对象,如下所示:
{
"price":"20000"
}
我想用逗号来格式化它以便于阅读,我找到了一种方法,但我觉得这是一个疯狂的笨重(我可能只是没有在谷歌中使用正确的术语)。< / p>
NSNumberFormatter *formatter = [NSNumberFormatter new];
[formatter setNumberStyle:NSNumberFormatterDecimalStyle];
NSString price = [NSString stringWithFormat:@"$%@", [formatter stringFromNumber:[NSNumber numberWithInteger:[price intValue]]]];
要获得正确的格式,我似乎过于复杂
答案 0 :(得分:6)
货币的最佳选择是NSNumberFormatterCurrencyStyle
NSNumberFormatter *formatter = [NSNumberFormatter new];
[formatter setNumberStyle:NSNumberFormatterCurrencyStyle];
NSNumber *price = @([priceTextFromJSON doubleValue]);
NSString *priceText = [formatter stringFromNumber:price];
答案 1 :(得分:1)
你所拥有的一切都很好。
如果不是整数,您可以使用[NSDecimalNumber decimalNumberWithString:price]
来更好地处理来源价格。
您可以使用[formatter setCurrencySymbol:@"$"]
来处理符号,而不是stringWithFormat
。
这些更改将使您的实施更加强大和优雅。