Как преобразовать числовой формат с разделением,
Пример Resultant String
"38963.26" value into "38,863.26"
"1013321.22" Value into "10,13,321.22"
//MARK:- Seperator number formate 1000 - 1,000
extension Formatter {
static let withSeparator: NumberFormatter = {
let formatter = NumberFormatter()
formatter.groupingSeparator = ","
formatter.numberStyle = .decimal
return formatter
}()
}
extension BinaryFloatingPoint {
var formattedWithSeparator: String {
return Formatter.withSeparator.string(for: self) ?? ""
}
}
let resultValue = StringValue.CGFloatValue()?.formattedWithSeparator
print("Resultant", resultValue!)
CGFloatVaule метод по умолчанию для преобразования String в floatValue.так же, как String.floatValue.
Для значения "38963.26" это дает результирующее значение "38,963.262" Интересно, почему это так, что дополнительные 2 в десятичном виде.
print("38963.26".CGFloatValue()!.formattedWithSeparator)
Output "38,863.262"