Bug: 249495873

Clone this repo:
  1. 13258ba Migrate to cargo_embargo. am: 09fa908e3c by Andrew Walbran · 4 weeks ago main master
  2. 09fa908 Migrate to cargo_embargo. by Andrew Walbran · 4 weeks ago
  3. cba757e Remove unused dependency_suffix option. am: 1516e23c1f by Andrew Walbran · 4 weeks ago
  4. 1516e23 Remove unused dependency_suffix option. by Andrew Walbran · 4 weeks ago
  5. 9d93500 Add BUILD file for hex kleaf build am: a78015008c am: 0bcb7dc109 am: 3158764ed1 am: 35a7b2b489 by Yecheng Zhao · 9 weeks ago


Crates.io: hex Documentation Build Status (Github Actions)

Encoding and decoding data into/from hexadecimal representation.


Encoding a String

let hex_string = hex::encode("Hello world!");

println!("{}", hex_string); // Prints "48656c6c6f20776f726c6421"

Decoding a String

let decoded_string = hex::decode("48656c6c6f20776f726c6421");

println!("{}", decoded_string); // Prints "Hello world!"

You can find the documentation here.


In order to use this crate, you have to add it under [dependencies] to your Cargo.toml

hex = "0.4"

By default this will import std, if you are working in a no_std environment you can turn this off by adding the following

hex = { version = "0.4", default-features = false }


  • std: Enabled by default. Add support for Rust's libstd types.
  • serde: Disabled by default. Add support for serde de/serializing library. See the serde module documentation for usage.


Licensed under either of

at your option.


Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.