use cst::get_entry;
use rand::seq::SliceRandom;
use rand::thread_rng;
use std::fs::File;
use std::io::prelude::*;
use std::path::Path;
#[cfg(windows)]
const LINE_ENDING: &'static str = "\r\n";
#[cfg(not(windows))]
const LINE_ENDING: &'static str = "\n";
fn ui_text(file: &str, key: usize) {
let path = Path::new(file);
let display = path.display();
let mut file = match File::open(&path) {
Err(why) => panic!("couldn't open {}: {}", display, why),
Ok(file) => file,
};
let mut s = String::new();
match file.read_to_string(&mut s) {
Err(why) => panic!("couldn't read {}: {}", display, why),
Ok(_) => println!(
"{}{}****************{}",
get_entry(s, key).unwrap(),
LINE_ENDING,
LINE_ENDING
),
}
}
fn main() {
let mut entries = [1, 2, 3, 4];
entries.shuffle(&mut thread_rng());
for entry in entries {
ui_text("example.cst", entry);
}
}