write and read with len at first
This commit is contained in:
34
src/main.rs
34
src/main.rs
@@ -6,7 +6,7 @@ use std::io::prelude::*;
|
||||
mod byte_writer;
|
||||
mod node;
|
||||
|
||||
use byte_writer::string_to_binary;
|
||||
use byte_writer::{binary_to_string, string_to_binary};
|
||||
use node::Node;
|
||||
|
||||
fn main() -> std::io::Result<()> {
|
||||
@@ -26,13 +26,33 @@ fn main() -> std::io::Result<()> {
|
||||
let root = node::create_tree(vec);
|
||||
eprintln!("root.n = {:#?}", root.n);
|
||||
|
||||
let v = string_to_binary("101");
|
||||
//file2.write_all(&v)?;
|
||||
/*
|
||||
let v = string_to_binary("1010001010101010");
|
||||
let i: u32 = 16;
|
||||
//eprintln!("v = {:?}", v);
|
||||
let len = i.to_be_bytes();
|
||||
|
||||
let mut buffer = Vec::new();
|
||||
file2.read_to_end(&mut buffer)?;
|
||||
eprintln!("v = {:#?}", v);
|
||||
eprintln!("buffer = {:#?}", buffer);
|
||||
eprintln!("v = {:?}", v);
|
||||
eprintln!("len = {:?}", len);
|
||||
file2.write_all(&len)?;
|
||||
file2.write_all(&v)?;
|
||||
*/
|
||||
|
||||
let mut buffer = [0u8; 4];
|
||||
file2.read_exact(&mut buffer)?;
|
||||
eprintln!("buffer = {:?}", buffer);
|
||||
let len = u32::from_be_bytes(buffer);
|
||||
eprintln!("len = {:?}", len);
|
||||
|
||||
let mut read = Vec::new();
|
||||
file2.read_to_end(&mut read)?;
|
||||
eprintln!("read = {:?}", read);
|
||||
//let current = read[4..].to_vec();
|
||||
let string = binary_to_string(read, len);
|
||||
eprintln!("string = {:?}", string);
|
||||
|
||||
//eprintln!("v = {:#?}", v);
|
||||
//eprintln!("buffer = {:#?}", buffer);
|
||||
//writeln!(file2, "{}", tes;t)?;
|
||||
//file2.write_all(&test.to_be_bytes())?;
|
||||
//file2.write_all(&[*key as u8])?;
|
||||
|
||||
Reference in New Issue
Block a user