hex package:hex-text
ByteString-Text hexidecimal conversions
Encode a ByteString as a hexidecimal Text value, or decode hexidecimal
Text as a ByteString.
Decodes hexadecimal text as a byte string
Encodes a byte string as hexadecimal number represented in text
Each byte of the input is converted into two characters in the
resulting text.
>>> (encodeHex . ByteString.singleton) 192
"c0"
>>> (encodeHex . ByteString.singleton) 168
"a8"
>>> (encodeHex . ByteString.pack) [192, 168, 1, 2]
"c0a80102"
Text produced by
encodeHex can be converted back to a
ByteString using
decodeHex.
The lazy variant of
encodeHex is
lazilyEncodeHex.
The lazy variant of
encodeHex
With laziness, it is possible to encode byte strings of infinite
length:
>>> (LazyText.take 8 . lazilyEncodeHex . LazyByteString.pack . cycle) [1, 2, 3]
"01020301"