繁体   English   中英

如何将十六进制字符串转换为UInt16?

[英]How to convert HEX string to UInt16?

我有一个十六进制字符串d285,我想将其转换为UInt16,请指导我如何进行转换。 我试过了

let buffer = UInt16("\(UInt8(text, radix: 16)!)")
return Data(bytes: (buffer?.bigEndian.toBytes)!)

但它不起作用

UInt16有一个初始化程序 ,该初始化程序使用字符串和基数值。 这可以用来从字符串创建UInt16。

let hexString = "d285"
let hexToInt = UInt16(hexString, radix: 16) // prints 53893
let hexStr = "d285"
var byteArr = [UInt8]()
byteArr += hexStr.utf8  // Convert into byte array

let str = NSString(bytes: byteArr, length: byteArr.count, encoding: String.Encoding.utf8.rawValue)
let number = UInt(str, radix: 16)!

希望这个能对您有所帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM