1use std::fs;
2
3use bincode::serialize;
4use hex_matrix::matrix::{Line, Matrix};
5use serde::{Deserialize, Serialize};
6
7#[derive(Serialize, Deserialize, Debug)]
8struct Test {
9 a: u64,
10 b: String,
11}
12
13fn main() {
14 println!("-------------------------------- serialized string --------------------------------");
16 let arr = "JOQWEJREOJOQWEJREOIQIWJEORIJOQWEJREOIQIWJEORIJOQWEJREOI
17 QIWJEORIJOQWEJREOIQIJOQWEJREOJOQWEJREOIQIWJEORIJOQWEJREOIQIWJEORIJOQWEJREOI
18 QIWJEORIJOQWEJREOIQIWJEORIJvQIWJQIWJEORIJOQWEJREOIQIWJEORIJvvOQWEJREOJOQWEJREOIQIWJEORIJOQWEJREOIQIWJE ".as_bytes();
19 let mut m = Matrix::new(20, arr.to_vec());
20 m.print_matrix();
21 println!("-------------------------------- serialized struct --------------------------------");
23 let t = Test {
24 a: 1,
25 b: String::from("test"),
26 };
27 let encoded: Vec<u8> = serialize(&t).unwrap();
28 let mut m = Matrix::new(20, encoded.to_vec());
29 m.print_matrix();
30 println!("-------------------------------- serialized file --------------------------------");
32 let buffer = fs::read("/resource/TEST_1").expect("read file error");
33 let mut m = Matrix::new(20, buffer.to_vec());
34 m.print_matrix();
35 println!(
36 "-------------------------------- line by line processing --------------------------------"
37 );
38 let lines = m.lines();
39 for (i, v) in lines.iter().enumerate() {
40 println!(
41 "line no:{}, line hex:{}, line info:{}",
42 v.no(),
43 v.hex(),
44 v.info()
45 );
46 }
47}