Skip to content

Instantly share code, notes, and snippets.

@shaver
Created April 12, 2019 20:32
Show Gist options
  • Save shaver/05c386117f0db31c508e2a7c4b616668 to your computer and use it in GitHub Desktop.
Save shaver/05c386117f0db31c508e2a7c4b616668 to your computer and use it in GitHub Desktop.
#[derive(Debug, Deserialize)]
struct JobSkillRecord {
rank: u32,
name1: String,
rating1: u32,
name2: String,
rating2: u32,
name3: String,
rating3: u32,
job_name: String
}
pub fn load_jobs(skill_ratings_file: &str) -> Result<JobSet, std::io::Error> {
let path = Path::new(skill_ratings_file);
let file = File::open(&path)?;
let mut rdr = csv::ReaderBuilder::new()
.delimiter(b':')
.from_reader(file);
let single_job = "Commander";
let jobs = HashMap::new();
{
let headers = rdr.headers()?;
println!("headers: {:?}", headers);
}
/*
for result in rdr.records() {
let record = result?;
println!("record: {:?}", record);
}
*/
for result in rdr.deserialize() {
let record: JobSkillRecord = result?;
if record.job_name == single_job {
println!("{:?}", record);
}
}
Result::Ok(jobs)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment