gpt4 book ai didi

swift - 为什么 NSNumber 不尊重语言环境 decimalSeparator

转载 作者:行者123 更新时间:2023-11-28 10:45:15 26 4
gpt4 key购买 nike

我正在使用 NumberFormatterString 转换为与当前语言环境相关的 NSNumber

我的测试地点是瑞典。

所以 decimalSeparator 在我的例子中是 ","

这是 NumberFormatter 声明。

let numberFormatter = NumberFormatter()
numberFormatter.locale = .current
numberFormatter.numberStyle = .decimal
numberFormatter.isLenient = true

用法。

let number = numberFormatter.number(from:"1,01") // 1.01

但是当我尝试将 NSNumber 转换回字符串时。

let stringNumber = number?.stringValue // 1.01

我收到错误的语言环境 decimalSeparator

最佳答案

不要使用 stringValue 将数字转换回您希望显示给用户的字符串。使用您的 NumberFormatter 将数字转换为区域设置友好的字符串表示形式。

仅供引用 - 无需将数字格式化程序的 locale 设置为 .current,因为这是默认设置。

关于swift - 为什么 NSNumber 不尊重语言环境 decimalSeparator,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48791509/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com