목차
// Returns an NSNumber object created by parsing a given string.
open func string(from number: NSNumber) -> String?
// Returns a string containing the formatted value of the provided number object.
func string(from: NSNumber) -> String?
// Returns a localized number string with the specified style.
@available(iOS 4.0, *)
open class func localizedString(from num: NSNumber, number nstyle: NumberFormatter.Style) -> String
NumberFormatter의 Locale을 설정하는 방법은 두 가지가 있습니다.
1-1 ) identifier 직접 설정
let numberFormatter: NumberFormatter = NumberFormatter()
numberFormatter.locale = Locale(identifier: "en_US")
en_US
는 English (United States)
의 identifier 입니다. 1-2) 유저의 지역 설정에 따름
// A locale representing the user's region settings at the time the property is read.
static var current: Locale { get }
current
는 특정 국가/언어의 identifier를 넣어주지 않아도, 유저의 지역 설정을 따를 수 있게 해주는 Property 입니다.let numberFormatter: NumberFormatter = NumberFormatter()
// numberFormatter.locale = .current (생략 가능)
.current
가 설정 됩니다.let numberFormatter = NumberFormatter()
numberFormatter.locale = Locale(identifier: "en_US") // << identifier here
numberFormatter.numberStyle = .decimal // 💛 소숫점까지 모두 커버하려면 decimal 필수
// 3-1 Number String -> NSNumber
let number: NSNumber = numberFormatter.number(from: "123456")
// 3-2 NSNumber -> Number String
numberFormatter.numberStyle = .decimal
let localizedNumberString = numberFormatter.string(from: number)