diff --git a/project/src/main.rs b/project/src/main.rs index 7b7df7b..7e06d90 100644 --- a/project/src/main.rs +++ b/project/src/main.rs @@ -3,10 +3,12 @@ mod action; mod args; mod parser; mod reader; +mod writer; use args::Arguments; use parser::Parser; use reader::Reader; +use writer::Writer; use std::io::Result; @@ -15,14 +17,33 @@ fn main() -> Result<()> { // Reading the Arguments let args = Arguments::new(); + // Display Status + println!("Reading PDF and extracting Text Content..."); + // Creating a File Reader & Reading let reader = Reader::new(&args.file_input.clone())?; let text = reader.extract(); + // Display Status + println!("Successfully extracted Text Content!"); + println!("Parsing the PDF..."); + // Creating a Parser to read the Text Content let mut parser = Parser::new(text); parser.start(); + // Display Status + println!("Successfully parsed the PDF!"); + println!("Saving to a CSV File..."); + + // Creating a Writer and saving the file + let writer = Writer::new(&parser.transactions, args.file_output.clone()); + writer.save()?; + + // Display Status + println!("Sucessfully Saved to {}", args.file_output); + println!("Thank you for using Statement Converter!"); + // It's ok! Ok(()) }