diff --git a/Packages/vChewing_SwiftExtension/Sources/SwiftExtension/SwiftExtension.swift b/Packages/vChewing_SwiftExtension/Sources/SwiftExtension/SwiftExtension.swift index 8ab1e5c3..59522e51 100644 --- a/Packages/vChewing_SwiftExtension/Sources/SwiftExtension/SwiftExtension.swift +++ b/Packages/vChewing_SwiftExtension/Sources/SwiftExtension/SwiftExtension.swift @@ -185,3 +185,23 @@ extension String { extension String { public var withEllipsis: String { self + "…" } } + +// MARK: - Localized String Extension for Integers and Floats + +extension BinaryFloatingPoint { + public func i18n(loc: String) -> String { + let formatter = NumberFormatter() + formatter.locale = Locale(identifier: loc) + formatter.numberStyle = .spellOut + return formatter.string(from: NSDecimalNumber(string: "\(self)")) ?? "" + } +} + +extension BinaryInteger { + public func i18n(loc: String) -> String { + let formatter = NumberFormatter() + formatter.locale = Locale(identifier: loc) + formatter.numberStyle = .spellOut + return formatter.string(from: NSDecimalNumber(string: "\(self)")) ?? "" + } +}