I'm a beginner at programming and get pretty confused when trying to use external libraries. I have my maps in shapefiles that I convert to GeoJSON using the website Mapshaper.org, and only then can i read the map from my Java application.
I want the user to be able to import a shapefile directly so I found out about GDAL ogr2ogr that has Java bindings, and can make this conversion with a single command such as:
$ ogr2ogr -f GeoJSON -t_srs crs:84 [name].geojson [name].shp
but I have no idea how to use this from my program.
Can someone provide me with an example of how to implement this? How should I import GDAL to my project? I'm using LibGDX if that's of any help.
In the end, all i need is a way to convert shapefile to GeoJSON directly on my application so the user can add new maps himself, so any suggestion is welcome.
Thank you so much!
First you need to install the Java Bindings (see here at the bottom). Than download the ogr2ogr.java from here (scroll down -> download original format -> put it into your project folder).
Than it gets quite easy. You just cann call ogr2ogr.java's main method. ogr2ogr -f GeoJSON -t_srs crs:84 [name].geojson [name].shp
:
String[] cmd = {"-t_srs", "CRS:84", "-f", "GeoJSON","[name].geojson","[name].shp"};
ogr2ogr.main(cmd);
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With