Sté*_*uca 5 currency numberformatter swift
我偶然发现了一个与 相关的问题NumberFormatter。当我将 设为positivePrefix时plusSign,货币符号不再存在。
这是一个错误还是我错过了什么?
\nlet formatter = NumberFormatter()\nformatter.numberStyle = .currency\nformatter.minimumFractionDigits = 0\nformatter.currencyCode = "EUR"\nformatter.maximumFractionDigits = 2\nformatter.positivePrefix = formatter.plusSign // Remove that to get \xe2\x82\xac25 (depends on your locale)\nlet price = 25.0\nlet s = formatter.string(from: NSNumber(value: price))\n\nprint("Price: \\(s)"). // "Price: +25"\nRun Code Online (Sandbox Code Playgroud)\n
当货币符号位于数值之前(取决于区域设置)时,则positivePrefix包含货币符号。因此,将其更改为formatter.plusSign仅清除结果字符串中的货币符号。
这就是我解决问题的方法:
formatter.positivePrefix = formatter.negativePrefix.replacingOccurrences(of: formatter.minusSign, with: formatter.plusSign)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
464 次 |
| 最近记录: |