0
A
回答
0
你可以簡單地轉換就像下面,
let decimalValue = Decimal(string:"12.34")
let stringValue = decimalValue?.description
print(stringValue ?? "Conversion Failed")
0
使用NSNumberFormatter
解析您的輸入。其generatesDecimalNumbers
屬性設置爲true:
let formatter = NumberFormatter()
formatter.generatesDecimalNumbers = true
這裏是你如何使用它,如果你想返回0時,字符串不能被解析:
func decimal(with string: String) -> NSDecimalNumber {
return formatter.number(from: string) as? NSDecimalNumber ?? 0
}
decimal(with: "80.00")
// Result: 80 as an NSDecimalNumber
默認情況下,格式化會看設備的區域設置來確定小數點標記。你應該這樣離開它。例如起見,我將它強制法文場所:
// DON'T DO THIS. Just an example of behavior in a French locale.
formatter.locale = Locale(identifier: "fr-FR")
decimal(with: "80,00")
// Result: 80
decimal(with: "80.00")
// Result: 0
如果你真的想始終使用逗號作爲小數點標記,可以設置decimalSeparator
屬性:
formatter.decimalSeparator = ","
相關問題
- 1. 轉換字符串類型的列表爲十進制類型列表
- 2. 將.net十進制類型轉換爲tsql十進制(3,3)
- 3. 如何將十六進制字符串轉換爲十進制?
- 4. cocoa:如何將整數類型轉換爲字符串類型?
- 5. 將十六進制字符串轉換爲數字類型並返回
- 6. 將字符串轉換爲Swift中的類類型
- 7. 轉換十六進制字符串動態基本類型
- 8. 將十六進制值轉換爲C類型字符串的IP地址。
- 9. 字符串轉換類型類類型
- 10. 使用顯式類型轉換將十六進制整數轉換爲字符?
- 11. 將字符串轉換爲十進制
- 12. 將LinqToExcel.RowNoHeader類型轉換爲字符串
- 13. 將MYSQL_ROW類型轉換爲字符串
- 14. 將字符串轉換爲'Date'類型
- 15. 將字符串轉換爲類型「LuaFunction」
- 16. 將字符串轉換爲類型UTCTime
- 17. 將字符串類型轉換爲int
- 18. 將字符串值轉換爲類型
- 19. 將字符串轉換爲字符串的泛型類型
- 20. 轉換十進制sql類型爲.net浮點類型
- 21. 將數據類型數字轉換爲十進制時出錯
- 22. C#將十進制類型比較爲字符串
- 23. 如何將字符串類型轉換爲任務型
- 24. 如何將字符串轉換爲泛型類型對象
- 25. Swift:將字符串轉換爲十六進制顏色代碼
- 26. 將十六進制字符串轉換爲十進制
- 27. 將字符串轉換爲十六進制到十六進制
- 28. 將字符串十進制轉換爲十六進制數
- 29. 將字符串轉換爲XML類型(元素類型)
- 30. MongoDB將字符串類型轉換爲浮點類型
'de.description',但是你可能需要使用'as NSDecimalNumber'來訪問'description(withLocale :)'。你也可以使用'NumberFormatter',儘管它總是先將小數轉換爲double,但在大多數情況下這不是問題。 – Sulthan
十進制到字符串或字符串到十進制 –