// // IHUdpTool.swift // Inhealth // // Created by weclouds on 2020/8/25. // Copyright © 2020 weclouds. All rights reserved. // import UIKit //data转换成16字符串 func dataConvertToHexString(data : Data) -> String { //十进制数组 let bytes: [UInt8]? = [UInt8](data) var str : String = "" for byte in bytes! { //十进制转换成16进制字符串 var s = String(byte,radix:16) if s.count == 1{ s = "0" + s } str = str + s } return str } //16进制字符串转成10进制 func hexStringConvertToDecimal(hexString : String) -> [UInt8] { let str = hexString as NSString let count = str.length / 2 var arr = [UInt8]() for i in 0.. String{ let str = command as NSString let count = str.length / 2 var sum = 0x0 for i in 0.. 1{ return hexStr.substring(with: NSRange.init(location: hexStr.length - 2, length: 2)) }else{ return "0\(hexStr)" } } //16进制的字符串转换10进制 func hexStringToInt(from:String) -> Int { let str = from.uppercased() var sum = 0 for i in str.utf8 { sum = sum * 16 + Int(i) - 48 // 0-9 从48开始 if i >= 65 { // A-Z 从65开始,但有初始值10,所以应该是减去55 sum -= 7 } } return sum } //10进制数据转换成16进制字符串,并拼接 func deciConvertHexStr(deciArr : [UInt8]) -> String { var hexTotalStr = "" for deci in deciArr{ var hexStr = String(deci,radix: 16) if hexStr.count == 1{ hexStr = "0\(hexStr)" } hexTotalStr = hexTotalStr + hexStr } return hexTotalStr }