我正在尝试转换一个长的十六进制字符串,但始终为nil,可能是因为字符超出范围。因此,如果您有想法从中获取二进制文件,请告诉我。
let hexString = "3c1878900216d211aa9e0924"
if let binaryInt = Int(hexString, radix: 16){
let binary = String(binaryInt, radix: 2)
print(binary)
}else{
print("Binary Integer getting nil")
}
预期结果:1111000001100001111000100100000000001000010110110100100001000110101010100111100000100100100100
十六进制长字符串
您的问题的这一部分是关键点。
[3c1878900216d211aa9e0924
大于Int64
可以处理的方式。
您可以尝试使用Decimal
:https://developer.apple.com/documentation/foundation/decimal