#display #hex

hexplay

Format u8 slices like an hex editor

9 releases

0.2.1 May 9, 2018
0.2.0 Aug 19, 2017
0.1.6 May 8, 2017
0.1.4 Mar 5, 2017

#14 in Visualization

Download history 21/week @ 2019-01-21 21/week @ 2019-01-28 16/week @ 2019-02-04 22/week @ 2019-02-11 25/week @ 2019-02-18 27/week @ 2019-02-25 39/week @ 2019-03-04 21/week @ 2019-03-11 30/week @ 2019-03-18 70/week @ 2019-03-25 31/week @ 2019-04-01 18/week @ 2019-04-08 78/week @ 2019-04-15 47/week @ 2019-04-22 33/week @ 2019-04-29

174 downloads per month
Used in 2 crates

MIT license

32KB
553 lines

Implements rust's Display trait to format a u8 slice as many hex editors do. This might be useful for dumping a binary blob for debugging purposes.

Build Status

Documentation

The API documentation can be found here: https://docs.rs/crate/hexplay/.

Example

Here's an example that prints a hex view of a slice of some vector's data:

extern crate hexplay;

use hexplay::HexViewBuilder;

fn main() {
    // The buffer we want to display
    let data : Vec<u8> = (0u8..200u8).collect();

    // Build a new HexView using the provider builder
    let view = HexViewBuilder::new(&data[40..72])
        .address_offset(40)
        .row_width(16)
        .finish();

    println!("{}", view);
}

This will result in the following output:

00000020                          28 29 2A 2B 2C 2D 2E 2F  |         ()*+,-./ |
00000030  30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F  | 0123456789:;<=>? |
00000040  40 41 42 43 44 45 46 47                          | @ABCDEFG         |

Installation

hexplay is on crates.io, so you can include it in your project like so:

[dependencies]
hexplay = "*"

Because this crate uses the ? operator, you need rust v1.13.0 or higher.

License

Hexplay is licensed under the terms of the MIT license.

Dependencies

~606KB