用 C 解析 geojson 文件
Parse geojson files with C
我找不到任何简单的 C 源文件或库来解析 geojson 文件(实现 rfc7946 标准)。
也许这样的解析器存在于 GRASS 或 GDAL 之类的项目中?但是我在浏览 C 库的世界时仍然遇到了一些麻烦。
一些曲目?
GeoJSON 是 JSON 格式,因此您可以使用 JSON 解析器。有几个:
https://github.com/search?l=C&q=json+parser&type=Repositories
您应该自己添加支票和其他东西。
如果需要数据的某种表示,可以自己写。 Mapbox用不到1k行的代码写了一个C++ version of GeoJSON parser for converting GeoJSON into geometry.hpp representation based on RapidJSON
A standard-compliant (RFC 7946) implementation of GeoJSON in C can be found inside SpatiaLite, but may be it's easier for you to use typical JSON parsers instead. You can take a look in virtualgeojson.c 如果你想使用这个库。
如果您想进行基本的几何操作,Ho1 的答案是完美的。对于高级的东西(你不想重新发明),你可以考虑使用 geos 的 CAPI。
请注意,CAPI GeoJSON 编写器非常新,不幸的是文档不是最新的。这是包含这些更改的头文件:https://github.com/libgeos/geos/blob/main/capi/geos_c.h.in
我终于开始了。
我正在写一个 small library based on json-parser,它允许说明解析的 json 是否是一个有效的 geojson。 (根据标准 7946)。
这显然是初稿,还有很多工作要做。
我是 C 的初学者,所以如果您有任何建议或意见,我显然很感兴趣。
我找不到任何简单的 C 源文件或库来解析 geojson 文件(实现 rfc7946 标准)。
也许这样的解析器存在于 GRASS 或 GDAL 之类的项目中?但是我在浏览 C 库的世界时仍然遇到了一些麻烦。
一些曲目?
GeoJSON 是 JSON 格式,因此您可以使用 JSON 解析器。有几个:
https://github.com/search?l=C&q=json+parser&type=Repositories
您应该自己添加支票和其他东西。
如果需要数据的某种表示,可以自己写。 Mapbox用不到1k行的代码写了一个C++ version of GeoJSON parser for converting GeoJSON into geometry.hpp representation based on RapidJSON
A standard-compliant (RFC 7946) implementation of GeoJSON in C can be found inside SpatiaLite, but may be it's easier for you to use typical JSON parsers instead. You can take a look in virtualgeojson.c 如果你想使用这个库。
如果您想进行基本的几何操作,Ho1 的答案是完美的。对于高级的东西(你不想重新发明),你可以考虑使用 geos 的 CAPI。
请注意,CAPI GeoJSON 编写器非常新,不幸的是文档不是最新的。这是包含这些更改的头文件:https://github.com/libgeos/geos/blob/main/capi/geos_c.h.in
我终于开始了。
我正在写一个 small library based on json-parser,它允许说明解析的 json 是否是一个有效的 geojson。 (根据标准 7946)。
这显然是初稿,还有很多工作要做。
我是 C 的初学者,所以如果您有任何建议或意见,我显然很感兴趣。