注意:GDAL的引用
private bool Shp2Json(string shpFilePath,string JsonFilePath)
{
//string shpFilePath = @"D:\VBProgram\code\WpfMapget-checkbox\bin\Debug\net5.0-windows10.0.19041.0\shp\鹅湖镇排口gcs.shp";
//string JsonFilePath = @"D:\VBProgram\code\WpfMapget-checkbox\bin\Debug\net5.0-windows10.0.19041.0\shp\jyjson.json";
OSGeo.GDAL.Gdal.AllRegister();
OSGeo.OGR.Ogr.RegisterAll();
// 支持中文路径
OSGeo.GDAL.Gdal.SetConfigOption("GDAL_FILENAME_IS_UTF8", "YES");
// 属性表字段支持中文
OSGeo.GDAL.Gdal.SetConfigOption("SHAPE_ENCODING", "");
//----指定数据源-----
OSGeo.OGR.DataSource ds = OSGeo.OGR.Ogr.Open(shpFilePath, 0);
if (ds == null)
{
return false;
}
//-----获得驱动-----
OSGeo.OGR.Driver drv = OSGeo.OGR.Ogr.GetDriverByName("GeoJSON");
var jsonData = drv.CopyDataSource(ds, JsonFilePath, null);
return true;
}