本文介绍了如何十六进制数转换成彬在斯威夫特?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有字符串变量:
无功海峡=239A23F
我如何把这个字符串转换成二进制数?
str.toInt()不起作用。

I have string variable:var str = "239A23F"How do I convert this string to a binary number?str.toInt() does not work.

推荐答案

您可以使用 NSScanner()从Foundation框架:

You can use NSScanner() from the Foundation framework:

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

作为的斯威夫特2(X code 7),的所有整数类型有一个

public init?(_ text: String, radix: Int = default)

初​​始化,这样一个纯粹的雨燕的解决方案可供选择:

initializer, so that a pure Swift solution is available:

let str = "239A23F"
let num = Int(str, radix: 16)

这篇关于如何十六进制数转换成彬在斯威夫特?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-15 00:35