diff --git a/gufo-jpeg/examples/jpeg-dump.rs b/gufo-jpeg/examples/jpeg-dump.rs new file mode 100644 index 0000000..83c4e1c --- /dev/null +++ b/gufo-jpeg/examples/jpeg-dump.rs @@ -0,0 +1,23 @@ +use gufo_jpeg::Jpeg; + +fn main() { + let path = std::env::args() + .nth(1) + .expect("First agument must be a file path."); + let data = std::fs::read(path).unwrap(); + let jpeg = Jpeg::new(&data); + + for segment in jpeg.segments() { + let data_init = segment + .data() + .iter() + .take(50) + .take_while(|x| **x != b'\0') + .filter(|x| x.is_ascii_graphic()) + .cloned() + .collect::>(); + let s = String::from_utf8_lossy(&data_init); + + println!("{:x?}: {s}", segment.marker()); + } +}