2011-04-16 93 views
2

我想格式化了一些与NSNumberFormatter显示为货币这样的:如何使用NSNumberFormatter显示货币?

NSNumberFormatter *numFormatter = [[NSNumberFormatter alloc] init]; 
NSNumber *myNumber = [NSNumber numberWithDouble:[@"0.058" doubleValue]]; 

[numFormatter setNumberStyle:NSNumberFormatterCurrencyStyle]; 

这给了我0,06 €。但我希望它是5,8 ct。有任何想法吗?

+0

你总是可以手动配置格式,精确您的要求。你总是希望价值以美分显示吗? – paulbailey 2011-04-16 10:18:34

+0

是始终美分 – 2011-04-16 11:00:39

回答

3

可以这样配置NSNumberFormatter:

NSNumberFormatter *numFormatter = [[NSNumberFormatter alloc] init]; 
[numFormatter setNumberStyle:NSNumberFormatterCurrencyStyle]; 
[numFormatter setCurrencySymbol:@"ct"]; 
[numFormatter setMultiplier:100]; 
NSNumber *myNumber = [NSNumber numberWithDouble:[@"0.058" doubleValue]]; 
+0

感谢,伟大的,到目前为止,是有可能有只是数字,则x CT没有最后0? – 2011-04-16 14:07:47

+0

我发现它已经谢了,setPositiveFormat – 2011-04-16 14:20:10

+1

你可以用'setFormat:(的NSString *)aFormat'(@ “### 0.0” 为你),其中格式模式可以找到[这里](http://developer.apple.com /library/mac/#documentation/Cocoa/Conceptual/DataFormatting/Articles/dfNumberFormatting10_4.html%23//apple_ref/doc/uid/TP40002368-SW1) – Bil 2011-04-16 14:27:30