Here is a Swift snippet that iterates through the bytes of an NSData and returns a string with hex. It also illustrates how to use ‘enumerateByteRangesUsingBlock’ to step through each byte in NSData.
func asHex(data: NSData) -> String { var resultAsHex: String = "" data.enumerateByteRangesUsingBlock({ (bytes, range, stop) -> Void in var chars = UnsafePointer<UInt8>(bytes) for i in 0...range.length-1 { resultAsHex += String(format: "%02x", UInt8(chars[i])) } }) return resultAsHex }















