Library for reading format geonames https://www.geonames.org/
Add this to your Cargo.toml
:
[dependencies]
geonames-lib = "0.3.0"
Code:
use std::fs::File;
use std::io::{BufRead, BufReader};
use geonames_lib::model::{GeoName, AlternateName};
fn main() {
for (index, line) in BufReader::new(File::open("alternateNames.txt").unwrap()).lines().enumerate() {
let alternate_name = AlternateName::deserialize_from_string(&line.unwrap()).unwrap();
println!("{:#?}", alternate_name);
if index > 20 {
break;
}
}
for (index, line) in BufReader::new(File::open("allCountries.txt").unwrap()).lines().enumerate() {
let geo_name = GeoName::deserialize_from_string(&line.unwrap()).unwrap();
println!("{:#?}", geo_name);
if index > 20 {
break;
}
}
for (index, line) in BufReader::new(File::open("admin1CodesASCII.txt").unwrap()).lines().enumerate() {
let admin_code = AdminCode::deserialize_from_string(&line.unwrap()).unwrap();
println!("{:#?}", admin_code);
if index > 20 {
break;
}
}
}
Contributions welcome! Please fork the repository and open a pull request with your changes.
geonames-lib is distributed under the terms of both the MIT license and the Apache License (Version 2.0).
See LICENSE-APACHE and LICENSE-MIT, and COPYRIGHT for details.