Le jeudi 07 mai 2015 21:53:19, Stefan Keller a écrit : > Hi Even (and Peter) > > Thanks for your quick answers! I actually referred to file related > read/write formats. > I tested some of them, if they support overwriting (I think this is > not always documented in the docs). > > I fact, following support the -overwrite option (in alphabetical > order): GPKG, Mapinfo File, ESRI Shapefil, SQLite > > Following don't: CSV, DXF, GeoJSON, GeoRSS, GML, GPX, Interlis 2, KML, > PDF and
Yes expected, none of them support DeleteLayer() > Spatialite (as SQLite w/ -dsco SPATIALITE=yes) Strange : could you provide a reproducable way for this ? The following works for me : rm poly.sqlite ogr2ogr -f sqlite poly.sqlite poly.shp -dsco spatialite=yes ogr2ogr poly.sqlite poly.shp -overwrite > > Cheers, Stefan > > P.S. Interlis 1 crashes currently :-< Pirmin is working on it and I > hope his patch will make it int the next release before code freeze. OK, there's no ticket for that ? > > 2015-05-07 20:56 GMT+02:00 Even Rouault <[email protected]>: > > Le jeudi 07 mai 2015 20:27:03, Stefan Keller a écrit : > >> Hi, > >> > >> Regarding overwrite: > >> I think the "-overwrite" parameter in ogr2ogr commandline tool does not > >> work. I tried it with drivers like "ESRI Shapefile", GeoJSON and others > >> without success. > >> ogr2ogr always exits and reports > >> "ERROR 6: The GeoJSON driver does not overwrite existing files." > >> Why should drivers not be able to overwrite? > > > > -overwrite causes an existing layer to be deleted before being recreated, > > for drivers that support the DeleteLayer() API. > > It does not cause an existing dataset to be destroyed however (which > > would be calling DeleteDataSource(), which isn't implemented by all > > drivers either), which is the issue you must have with the geojson > > driver. > > For shapefiles, that works in my testing however. > > I know this is a bit user unfriendly: nothing fundamentally impossible to > > improve here, just historic behaviour. > > > >> Is'nt deleting files common task for all drivers (meaning to be > >> handled outside the actual writer drivers)? > > > > Implementation of DeleteLayer() is driver specific code, since only > > drivers know which files (when files are involve. Think to a PostGIS > > table) are related to a layer. > > > >> -S. > >> > >> 2015-02-06 11:06 GMT+01:00 Even Rouault <[email protected]>: > >> > Le vendredi 06 février 2015 10:42:04, Carlos Piury a écrit : > >> >> Hi, I am trying to create a vector format (i.e. ESRI Shapefile) from > >> >> laser file (.las), and it works fine, but when I try to overwrite the > >> >> file I get the following error: > >> >> > >> >> ERROR 1: Layer 'output' already exists > >> > > >> > --> The message is hopefully clear enough and comes from the > >> > implementation of CreateLayer() in the shape file driver. You have to > >> > destroy the files of the shapefile first if they exists. You can use > >> > DeleteDataSource() for that. > >> > > >> >> terminate called after throwing an instance of 'std::runtime_error' > >> >> > >> >> what(): output layer creation failed > >> >> > >> >> Aborted (core dumped) > >> > > >> > Does this come from inside GDAL code or you own code ? Looks like from > >> > yours, if you transform GDAL errors into C++ exceptions. > >> > > >> >> I am using the next code to create the layer: > >> >> > >> >> OGRSFDriverH formatTranslateDriver = > >> >> OGRGetDriverByName(argFormat->sval[0]); > >> >> > >> >> OGRDataSourceH dataset = > >> >> OGR_Dr_CreateDataSource(formatTranslateDriver, argOutput->sval[0], > >> >> 0); > >> >> > >> >> OGRLayerH layer = OGR_DS_CreateLayer(dataset, layerName.c_str(), 0, > >> >> wkbPoint25D, 0); > >> >> > >> >> Any idea about this error? > >> >> > >> >> Thanks. > >> > > >> > -- > >> > Spatialys - Geospatial professional services > >> > http://www.spatialys.com > >> > _______________________________________________ > >> > gdal-dev mailing list > >> > [email protected] > >> > http://lists.osgeo.org/mailman/listinfo/gdal-dev > > > > -- > > Spatialys - Geospatial professional services > > http://www.spatialys.com -- Spatialys - Geospatial professional services http://www.spatialys.com _______________________________________________ gdal-dev mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/gdal-dev
