Python与开源GIS:关闭矢量数据、释放内存与删除数据

在读取数据完毕之后,一个好的习惯就是释放数据打开时所占用的内存。 释放内存需要将要素的资源释放,使用函数Destroy()。

>>> feature.Destroy()

关闭数据源,相当于文件系统操作中的关闭文件。

>>> dataSource.Destroy()

删除矢量数据

大多数的GIS数据格式,如shapefile,mapinfo tab等,都不是只有一个文件就可以的。像shapefile,除了最基本的shp文件外,还需要有保存属性的dbf文件。 因此,在对GIS数据进行删除的时候,就 不能使用os模块提供了工具进行删除(其实也可以,但是需要对相关的文件进行查找,并进行全部删除),而要使用OGR提供的删除数据的函数。

>>> if os.path.exists(out_shp):
>>>     driver.DeleteDataSource(out_shp)
>>> ds2 = driver.CreateDataSource(out_shp)