【发布时间】:2012-03-09 18:24:13
【问题描述】:
我正在编写信用计算器,我希望在用户输入数字时使用(本地)千位分隔符格式化数字。
例如,100000 应变为 100.000(本地)。
在我的示例中如何做到这一点?
NSNumberFormatter *nf = [[[NSNumberFormatter alloc] init] autorelease];
[nf setNumberStyle: NSNumberFormatterDecimalStyle];
[nf setRoundingMode: NSNumberFormatterRoundHalfUp];
[nf setMaximumFractionDigits: 2];
double loanAmount = [[nf numberFromString: tbxLoanAmount.text] floatValue];
double intRate = [[nf numberFromString: annualInterestRate.text] floatValue];
double NRate = [[nf numberFromString: NInterestRate.text] floatValue];
double years = [[nf numberFromString: noOfYears.text] floatValue];
double residual = [[nf numberFromString: residualvalue.text] floatValue];
非常感谢!
D
【问题讨论】:
-
你不是说
100.000应该变成100000,而不是相反吗?另外,NSNumberFormatter默认没有当前的语言环境格式吗?不是这样吗? -
我认为100000应该变成100.000。
-
如果千位分隔符是
.,那么如果你的字符串是100.000,那么你得到的数字应该是十万吧? -
是的,带有千位分隔符 (.) Euro 或 (,) US。
-
是的,是十万。
标签: objective-c nsnumberformatter