您如何使用 GDAL Java 绑定编写矢量文件?
Posted
技术标签:
【中文标题】您如何使用 GDAL Java 绑定编写矢量文件?【英文标题】:How do you write vector files with the GDAL Java bindings? 【发布时间】:2018-05-05 17:11:53 【问题描述】:使用GDAL的Java绑定(版本2.2.1)通过org.gdal.ogr.ogr.OpenShared(filePath)
方法创建DataSource
,我可以毫无困难地读取不同类型的文件。但是,如果我想从 DataSource 创建一个 SQLite 文件,我该怎么做呢?
查看JavaDocs,我在Geometry
对象上找到了一些ExportTo
方法,可用于手动构建GeoJSON、WKT、KML 等:http://gdal.org/java/org/gdal/ogr/Geometry.html
Driver 类中似乎没有任何东西可以让您使用它们来导出数据源。
使用 ogr2ogr 就像运行以下命令一样简单:
ogr2ogr -f "SQLite" ./output.sqlite3 ./input.geojson
还有 this technique 用于在 Java 中运行 ogr2ogr,但我会假设 Java 绑定中会有本机的东西。
【问题讨论】:
【参考方案1】:我已经接受最好的方法是在我的项目中简单地包含ogr2ogr.java file from the GitHub repo 并将其包装在一个函数中,使其更易于访问。它几乎是原始 C++ GDAL 文件的直接移植。
我所做的一项更改是将 ogr2ogr main
函数重命名为 execute
,以便在我运行它时不会混淆应用程序。
【讨论】:
以上是关于您如何使用 GDAL Java 绑定编写矢量文件?的主要内容,如果未能解决你的问题,请参考以下文章
ogr ogr2ogr 矢量数据格式转换 ogrinfo 矢量数据图层信息操作 ogr gdal的一部分 gdal 命令行 库操作