37 lines
981 B
Rust
37 lines
981 B
Rust
use std::{error::Error, io, process};
|
|
|
|
fn run() -> Result<(), Box<dyn Error>> {
|
|
let mut wtr = csv::Writer::from_writer(io::stdout());
|
|
// Since we're writing records manually, we must explicitly write our
|
|
// header record. A header record is written the same way that other
|
|
// records are written.
|
|
wtr.write_record(&[
|
|
"City",
|
|
"State",
|
|
"Population",
|
|
"Latitude",
|
|
"Longitude",
|
|
])?;
|
|
wtr.write_record(&[
|
|
"Davidsons Landing",
|
|
"AK",
|
|
"",
|
|
"65.2419444",
|
|
"-165.2716667",
|
|
])?;
|
|
wtr.write_record(&["Kenai", "AK", "7610", "60.5544444", "-151.2583333"])?;
|
|
wtr.write_record(&["Oakman", "AL", "", "33.7133333", "-87.3886111"])?;
|
|
|
|
// A CSV writer maintains an internal buffer, so it's important
|
|
// to flush the buffer when you're done.
|
|
wtr.flush()?;
|
|
Ok(())
|
|
}
|
|
|
|
fn main() {
|
|
if let Err(err) = run() {
|
|
println!("{}", err);
|
|
process::exit(1);
|
|
}
|
|
}
|