gdal保存gdb文件
时间: 2023-09-04 17:12:07 浏览: 51
使用 GDAL/OGR 库可以将数据保存到 ESRI 文件地理数据库 (File Geodatabase, 简称 GDB) 中。以下是一个简单的示例代码,可以将 Shapefile 文件保存为 GDB 文件:
```python
from osgeo import ogr
# 打开 Shapefile 文件
driver = ogr.GetDriverByName('ESRI Shapefile')
shp = driver.Open('/path/to/shapefile.shp', 0)
# 获取 Shapefile 中的第一个图层
layer = shp.GetLayer()
# 创建 GDB 文件
gdb_driver = ogr.GetDriverByName('FileGDB')
gdb = gdb_driver.CreateDataSource('/path/to/gdb_file.gdb')
# 将 Shapefile 中的图层复制到 GDB 文件中
gdb_layer = gdb.CopyLayer(layer, 'new_layer_name')
# 关闭所有文件
layer = None
shp = None
gdb_layer = None
gdb = None
```
在上面的示例中,我们首先打开一个 Shapefile 文件,获取其中的第一个图层。然后,我们使用 OGR API 中的 `GetDriverByName` 方法获取 ESRI 文件地理数据库的驱动程序,并使用 `CreateDataSource` 方法创建一个新的 GDB 文件。最后,我们将 Shapefile 中的图层复制到 GDB 文件中,并将其命名为 `new_layer_name`。最后,我们关闭所有文件。
需要注意的是,在运行此代码之前,您需要安装 GDAL 和 OGR 库,并且需要正确设置 GDAL_DATA 和 GDAL_DRIVER_PATH 环境变量。