aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2021-12-14 18:18:55 -0500
committerJesse Luehrs <doy@tozt.net>2021-12-14 18:18:55 -0500
commit02f66d1819293f13a90c38e4b1c704f07fc4dd26 (patch)
tree68d7fe8eb0734eb0fcd12ae9b77210451ca8d5c3
parentf5a16c77b43b37c7a7c1a96abd2187a2cea10c5b (diff)
downloadttyrec-02f66d1819293f13a90c38e4b1c704f07fc4dd26.tar.gz
ttyrec-02f66d1819293f13a90c38e4b1c704f07fc4dd26.zip
add example for extracting frame contents
-rw-r--r--examples/explode.rs26
1 files changed, 26 insertions, 0 deletions
diff --git a/examples/explode.rs b/examples/explode.rs
new file mode 100644
index 0000000..67e0e48
--- /dev/null
+++ b/examples/explode.rs
@@ -0,0 +1,26 @@
+use std::io::Write as _;
+
+fn main() {
+ let file = std::env::args_os().nth(1).unwrap();
+ let fh = std::fs::File::open(file).unwrap();
+ let mut reader = ttyrec::blocking::Reader::new(fh);
+
+ let mut idx = 1;
+ loop {
+ match reader.read_frame() {
+ Ok(frame) => {
+ let mut fh =
+ std::fs::File::create(&format!("{}.out", idx)).unwrap();
+ fh.write_all(&frame.data).unwrap();
+ idx += 1;
+ }
+ Err(ttyrec::Error::EOF) => {
+ break;
+ }
+ Err(e) => {
+ eprintln!("{}", e);
+ std::process::exit(1);
+ }
+ }
+ }
+}