#display #hex

hexplay

Format u8 slices like an hex editor

8 releases

0.2.0 Aug 19, 2017
0.1.6 May 8, 2017
0.1.4 Mar 5, 2017

#46 in Development tools

Download history 68/week @ 2018-05-27 49/week @ 2018-06-03 22/week @ 2018-06-10 51/week @ 2018-06-17 20/week @ 2018-06-24 164/week @ 2018-07-01 12/week @ 2018-07-08 18/week @ 2018-07-15 70/week @ 2018-07-22 62/week @ 2018-07-29 114/week @ 2018-08-05 61/week @ 2018-08-12 13/week @ 2018-08-19

281 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

~621KB