10
У меня есть строковая переменная: var str = "239A23F" Как преобразовать эту строку в двоичное число? str.toInt()
не работает.Как преобразовать шестнадцатеричный номер в bin в Swift?
У меня есть строковая переменная: var str = "239A23F" Как преобразовать эту строку в двоичное число? str.toInt()
не работает.Как преобразовать шестнадцатеричный номер в bin в Swift?
Вы можете использовать NSScanner()
из рамок Фонда:
let scanner = NSScanner(string: str)
var result : UInt32 = 0
if scanner.scanHexInt(&result) {
println(result) // 37331519
}
или библиотечной функции BSD strtoul()
let num = strtoul(str, nil, 16)
println(num) // 37331519
По Swift 2 (Xcode 7), все целые типы имеют
public init?(_ text: String, radix: Int = default)
, так что доступно чистое решение Swift:
let str = "239A23F"
let num = Int(str, radix: 16)