Podoba mi się odpowiedź @celeniusa; jednak inną opcją byłoby wyeksportowanie zestawu danych World Borders do CSV przy użyciu ogr2ogr . Właśnie pobrałem twój ulubiony zestaw danych i uruchomiłem to polecenie z ogr2ogr - pamiętaj, że twój skrypt powinien być pojedynczym ciągiem bez żadnych podziałów linii. Najłatwiej jest je pisać w notatniku z włączonym zawijaniem słów, a następnie kopiuję je do terminala ogr2ogr:
ogr2ogr -f "CSV" "E:\4_GIS\01_tutorials\worldborders\World_wkt"
"E:\4_GIS\01_tutorials\worldborders\TM_WORLD_BORDERS-0.3.shp" -lco
"GEOMETRY=AS_WKT" -lco "LINEFORMAT=CRLF" -lco "SEPARATOR=SEMICOLON"
(CAVEAT: Kopiowanie / wklejanie skryptu mojego ogrodu z Internetu i na terminal nie będzie działać, ponieważ witryna wprowadzi łamanie wierszy i zastępowanie znaków ASCII dla podwójnych cudzysłowów. W rezultacie OGR będzie miał problem z odczytaniem skryptu. Z tego powodu Zalecam, aby najpierw wpisać dostosowany skrypt w notatniku lub bezpośrednio w terminalu.)
OGR utworzy World_wkt
katalog, zanim wykona tłumaczenie formatu pliku, więc nie rób tego katalogu przed uruchomieniem skryptu, bo pojawi się błąd.
Oto fragment wyników, które otrzymałem:
WKT;FIPS;ISO2;ISO3;UN;NAME;AREA;POP2005;REGION;SUBREGION;LON;LAT
"MULTIPOLYGON (((-61.686668 17.024441000000138,-61.73806 16.98971
"POLYGON ((2.96361 36.802216,2.981389 36.806938,3.001111 36.80971
"MULTIPOLYGON (((45.083321 39.768044000000145,45.266388 39.611107
"POLYGON ((19.436214 41.021065,19.450554 41.059998,19.513611 41.2
"MULTIPOLYGON (((45.573051000000135 40.632488,45.528881 40.606098
"MULTIPOLYGON (((11.750832 -16.75528,11.775 -16.804726,11.77 -16.
"MULTIPOLYGON (((-170.542511 -14.2975,-170.546112 -14.29861,-170.
To urywek dobrze znanego tekstu (WKT). Bardzo czytelne dla ludzi, ale te ciągi znaków ciągną się w prawo przez długą, długą drogę, więc nie chciałem kopiować kompletnych rekordów. :)
Jeśli chcesz tylko pobrać zestaw danych CSV, który utworzyłem, opublikowałem go tutaj , ale zachęcam do wypróbowania tej techniki dla siebie. Jeśli jesteś zainteresowany i chcesz uzyskać więcej informacji, kilka tygodni temu napisałem bloga o tematyce , który możesz znaleźć, aby uzyskać bardziej istotne szczegóły.