我有很多像“9904962”这样的字符串& “57053717”我需要将它们转换为CLLocationDegrees以用于创建CLLocation对象。
问题是缺少逗号/标点符号。
我可以进行字符计数并设置标点符号:
var coordinateString = "57053717"
let offset = coordinateString.characters.count > 7 ? 2 : 1
coordinateString.insert(".", at: coordinateString.index(coordinateString.startIndex, offsetBy: offset))
然后我的coordinateString将是“57.053717”或“9.904962”
但我不认为这是最佳解决方案,这仅涵盖原始字符串长于或短于7个字符的情况。
什么是更好的解决方案?
答案 0 :(得分:0)
Swift3.0
let numberString: NSMutableString = "57053717" // Convert string to MutableString
let offset = numberString.characters.count > 7 ? 2 : 1 // finding offset value
numberString.insert(".", at: offset) // insert "." in offset index
print(numberString)
let doubled = numberString.doubleValue // convert to double vale
print(doubled)
输出:57.053717