一尘不染

Int NSFormatter,可快速将123456更改为1,23,456

swift

我得到的值是123456,我想在快速编程中将此值转换为1,23,456。我怎样才能做到这一点 ?


阅读 288

收藏
2020-07-07

共1个答案

一尘不染

这是一种印度风格的数字格式,其中100,000(写为1,00,000)是一个
lakh”

针对iOS中的不同区域设置从CurrencyFormatter转换和简化Objective-C代码可得到:

let formatter = NSNumberFormatter()
formatter.numberStyle = .DecimalStyle
formatter.locale = NSLocale(localeIdentifier: "en_IN") // English (India) locale

let number = 12345678
let string = formatter.stringFromNumber(number)!
println(string) // 1,23,45,678

Swift 3更新:

let formatter = NumberFormatter()
formatter.numberStyle = .decimal
formatter.locale = Locale(identifier: "en_IN") // English (India) locale

let number = 12345678
let string = formatter.string(for: number)!
print(string) // 1,23,45,678
2020-07-07