2012-03-07 6 views
4

現在、JSONフィードからNSNumberFormatterで通貨スタイルを使用して数値にフロートをフォーマットしようとしています。NSNumberFormatterで通貨スタイルを使用すると間違った出力が発生する

私の現在のソリューションはこれです:

float test = 100.50; 
NSNumber *number = [NSNumber numberWithFloat:test]; 

NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init]; 
[formatter setNumberStyle:NSNumberFormatterCurrencyStyle]; 
[formatter setCurrencyCode:@"DKK"]; 
NSString *price = [formatter stringFromNumber:number]; 

私の問題は、選択した通貨に対して正しい結果が「DKK100,50」であるべきときに出力が「DKK100.50」であるということである(現在の結果が気づきます小数点のセパレータとしてのドットで、カンマではありません)。

私は間違っていますか?

答えて

1

NSNumberFormatterNSLocaleを指定していない場合は、設定で現在の「地域」を使用して通貨形式(セパレータを含む)を設定します。あなたの現在の「地域」の設定は、セパレータとしてドットを使用する領域であることがコンマを使用するものに変更し、

+0

例えば例えばen_US

[formatter setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"] autorelease]]; 

かもしれないトリックをしたこと、ありがとう:) – Krueger

関連する問題