Redesign geodata.xml so it also stores country names
This commit is contained in:
parent
4a52e037af
commit
15737de254
@ -16,25 +16,34 @@ while (<TIMEZONES>) {
|
||||
}
|
||||
close(TIMEZONES);
|
||||
|
||||
my $xml_file = IO::File->new('>geodata.xml');
|
||||
my $writer = XML::Writer->new(OUTPUT => $xml_file, NEWLINES => 0);
|
||||
|
||||
$writer->xmlDecl('utf-8');
|
||||
$writer->startTag('geodata');
|
||||
$writer->startTag('countries');
|
||||
|
||||
open(COUNTRIES, 'countryInfo.txt') or die("Cannot open countryInfo.txt: $!\n");
|
||||
while (<COUNTRIES>) {
|
||||
my ($country_code, $iso3, $iso_numeric, $fips, $name, $capital, $area, $population, $continent, $tld, $currency_code, $currency_name, $phone, $postal_code_format, $postal_code_regex, $languages, $geonameid, $neighbours, $equivalent_fips_code) = split(/\t/, $_);
|
||||
next if ($country_code !~ /^[A-Z]{2}$/);
|
||||
|
||||
$writer->emptyTag('c',
|
||||
'n' => $name,
|
||||
'c' => $country_code,
|
||||
);
|
||||
|
||||
if ($country_code =~ /^[A-Z]{2}$/) {
|
||||
$countries{$country_code} = $name;
|
||||
}
|
||||
}
|
||||
close(COUNTRIES);
|
||||
|
||||
$writer->endTag('countries');
|
||||
$writer->startTag('places');
|
||||
|
||||
open(GEONAMES, "cities.txt") or die("Cannot open cities.txt: $!\n");
|
||||
|
||||
my $xml_file = IO::File->new('>geodata.xml');
|
||||
my $writer = XML::Writer->new(OUTPUT => $xml_file, NEWLINES => 0);
|
||||
|
||||
$writer->xmlDecl('utf-8');
|
||||
$writer->startTag('geodata');
|
||||
|
||||
while (<GEONAMES>) {
|
||||
chomp($_);
|
||||
my ($country_code, $name, $latitude, $longitude, $elevation, $timezone) = split(/\t/, $_);
|
||||
@ -62,6 +71,7 @@ while (<GEONAMES>) {
|
||||
print $., "\n" if ($. % 19083 == 0);
|
||||
}
|
||||
|
||||
$writer->endTag('places');
|
||||
$writer->endTag('geodata');
|
||||
$writer->end();
|
||||
$xml_file->close();
|
||||
|
Loading…
Reference in New Issue
Block a user