python - 使用 Python GDAL 读取 OpenAir 文件
问题描述
我需要用Python阅读OpenAir文件。
根据以下矢量驱动描述,GDAL内置了 OpenAir 功能: https ://gdal.org/drivers/vector/openair.html
但是,没有用于读取此类 OpenAir 文件的示例代码。到目前为止,我已尝试使用以下行读取示例文件:
from osgeo import gdal
airspace = gdal.Open('export.txt')
但是它返回给我以下错误:
错误 4:“export.txt”未被识别为受支持的文件格式。
我已经看过 vectorio 但是没有实现任何 OpenAir 功能。
为什么我会收到上述错误?
如果有人想重现该问题:可以使用 XContest 轻松生成示例 OpenAir 文件: https ://airspace.xcontest.org/
解决方案
由于您正在处理矢量数据,因此您需要使用ogr
而不是gdal
(它通常与 一起打包gdal
)
所以你可以这样做:
from osgeo import ogr
ds = ogr.Open('export.txt')
layer = ds.GetLayer(0)
featureCount = layer.GetFeatureCount()
print(featureCount)
有很多关于使用的信息ogr
,但这本食谱可能会有所帮助。
推荐阅读
- azure-data-studio - 如何在 Azure Data Studio 的“SELECT TOP 1000”中更改默认值 1000?
- composer-php - 如何使用作曲家在 laravel 5.7 中安装社交名流?
- python-2.7 - 引发 MQMIError(rv[-2], rv[-1]) pymqi.MQMIError: MQI 错误。比较:2,原因 2085:失败:MQRC_UNKNOWN_OBJECT_NAME
- python - 如何根据公式在新数据框中组合时间序列?
- ruby - Ruby Net::HTTP 超时时的第二次请求
- matlab - 后向传播和铰链损失
- matlab - “去噪图像”中的“去噪网络”是否特定于一种噪声?
- c# - 两个具有完全相同的 assemblyQualifiedName 但不相等的 Type
- firebase - 将 Xamarin 表单链接到 Firestore
- c++ - 如何使用 fmt 库用十进制逗号格式化浮点数?