2012-03-07 81 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

您沒有爲您的NSNumberFormatter指定NSLocale,它將使用設置中的當前「區域」來設置貨幣格式(包括分隔符)。您當前的「區域」設置可能是使用點作爲分隔區域,將其更改爲使用逗號之一,例如en_US

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

例如

+0

謝謝你,該訣竅:) – Krueger 2012-03-07 11:25:09