dcb04a9e103a5cd8b53763051cef09bc66abe029fdebae5e1d417e2ffc2a07a4
到它的等效字符串:
Ü°J:\ص7cï ¼f«à)ýë®^A~/ü*¤
以下网站的工作非常好:
http://codebeautify.org/hex-string-converter
http://string-functions.com/hex-string.aspx
但我无法在Swift 3中做同样的事情.以下代码也不能完成这项工作:
func convertHexStringTonormalString(hexString:String)->String!{ if let data = hexString.data(using: .utf8){ return String.init(data:data,enCoding: .utf8) }else{ return nil}}解决方法 您希望将十六进制编码数据用作AES密钥,但是
数据不是有效的UTF-8序列.你可以解释
它作为ISO拉丁语编码中的字符串,但AES(键:字符串,…)
初始化程序将字符串转换回其UTF-8表示形式,
即,您将获得与您开始时不同的关键数据.
因此,您根本不应将其转换为字符串.使用
extension Data { init?(fromHexEncodedString string: String)}
从hex/binary string conversion in Swift开始的方法
将十六进制编码的字符串转换为Data然后传递它
作为AES的数组(键:数组< UInt8>,…)初始值设定项:
let hexkey = "dcb04a9e103a5cd8b53763051cef09bc66abe029fdebae5e1d417e2ffc2a07a4"let key = Array(Data(fromHexEncodedString: hexkey)!)let encrypted = try AES(key: key,....)总结
以上是内存溢出为你收集整理的swift – 将十六进制编码的String转换为String全部内容,希望文章能够帮你解决swift – 将十六进制编码的String转换为String所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)