Java实现GeoJSON 与 EsriJSON格式的相互转换
一、在pom中添加引用
<dependency>
<groupId>com.esri.geometry</groupId>
<artifactId>esri-geometry-api</artifactId>
<version>2.2.0</version>
</dependency>
二、转换的代码
/**
* 将geojson(geometry)格式转为 Arcgis json(geometry)
* @param esri_json geojson类型的字符串
*/
public String EsriJsonToGeoJson(String esri_json){
Geometry geometry = createGeometryByJson(esri_json);
return getGeoJson(geometry);
}
/**
* 将Arcgis json(geometry)格式转为 geojson(geometry)
* @param geojson Arcgis json格式数据
*/
public String GeoJsonToEsriJson(String geojson){
Geometry geometry = createGeometryByGeoJson(geojson);
return getEsriJson(geometry);
}
private Geometry createGeometryByGeoJson(String geojson) {
return GeometryEngine.geoJsonToGeometry(geojson, WktExportFlags.wktExportDefaults, Geometry.Type.Unknown).getGeometry();
}
private Geometry createGeometryByJson(String esri_json) {
return GeometryEngine.jsonToGeometry(esri_json).getGeometry();
}
private String getGeoJson(Geometry geometry) {
return GeometryEngine.geometryToGeoJson(geometry);
}
private String getEsriJson(Geometry geometry) {
return GeometryEngine.geometryToJson(WktExportFlags.wktExportDefaults,geometry);
}
private String getWktStr(Geometry geometry){
return GeometryEngine.geometryToWkt(geometry,WktExportFlags.wktExportDefaults);
}