iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > JAVA >基于GDAL的JAVA生成GDB文件实战
  • 209
分享到

基于GDAL的JAVA生成GDB文件实战

GDALJAVA开源GIS 2023-10-01 14:10:24 209人浏览 泡泡鱼
摘要

前言         在之前博客中,陆续的介绍了关于gdb文件的读取,gis利器之Gdal(三)gdb数据读取,玩转GDAL一文带你深入Windows下FileGDB驱动支持,这些文章主要都是介绍gdal的读取gdb以及简单的gdb文件

前言

        在之前博客中,陆续的介绍了关于gdb文件的读取,gis利器之Gdal(三)gdb数据读取玩转GDAL一文带你深入Windows下FileGDB驱动支持,这些文章主要都是介绍gdal的读取gdb以及简单的gdb文件读写。在实际工作中gdb是一种丰富类型的数据库,可以记录许多的数据,一个gdb文件可以包含多个图层以及多个属性列表。本文将深度讲解如何使用Java语言,基于GDAL进行图层的写入,设置属性表的字段中文别名,通过实例的方式进行讲解,最后使用ArcMap进行空间信息和属性信息的验证。

 一、JAVA具体开发

1、Pom.xml定义

      示例工程采用Maven进行jar管理,因此需要在Pom.xml定义相关依赖。参考代码如下:

4.0.0com.yelanggdal_demo10.0.1-SNAPSHOTgdal_demo1gdal的第一次试验 UTF-81.81.8 org.gdalgdal3.4.3system${project.basedir}/lib/gdal.jar    net.sf.ucanaccess    ucanaccess    4.0.4 junitjunit4.11test

2、gdb驱动支持定义

// 注册所有的驱动gdal.AllReGISter();// 为了支持中文路径,请添加下面这句代码gdal.SetConfiGoption("GDAL_FILENAME_IS_UTF8", "YES");// 为了使属性表字段支持中文,请添加下面这句gdal.SetConfigOption("SHAPE_ENcoding", "CP936");SpatialReference sr = new SpatialReference();sr.ImportFromEPSG(4326);String saveGdbPath = "D:/creategdb/测试生成gdb1210.gdb";    org.gdal.ogr.Driver oDriver = ogr.GetDriverByName("FileGDB");if (oDriver == null) {System.out.println("FileGDB" + " 驱动不可用!\n");return;}    DataSource dataSourceGDB = oDriver.CreateDataSource(saveGdbPath);

3、创建gdb图层layer

 DataSource dataSourceGDB = oDriver.CreateDataSource(saveGdbPath);//gdb图层Layer gdbLayer = dataSourceGDB.CreateLayer("ZDXX", sr, ogr.wkbPolygon, null);

4、创建属性列,同时设置别名

// 创建一个叫FeatureName的字符型属性,字符长度为50FieldDefn oFieldName = new FieldDefn("FieldName", ogr.OFTString);oFieldName.SetAlternativeName("要素类型");oFieldName.SetWidth(100);gdbLayer.CreateField(oFieldName, 1);

5、创建空间元素

FeatureDefn oDefn =gdbLayer.GetLayerDefn();// 创建三角形要素Feature oFeatureTriangle = new Feature(oDefn);oFeatureTriangle.SetField(0, 0);oFeatureTriangle.SetField(1, "三角形");Geometry geomTriangle =Geometry.CreateFromWkt("POLYGON ((0 0,20 0,10 15,0 0))");oFeatureTriangle.SetGeometry(geomTriangle);gdbLayer.CreateFeature(oFeatureTriangle);

二、gdb文件生成

       经过以上的一系列步骤,基本上完成gdb文件的生成测试,需要完整测试代码可以点击基于JAVA的GDAL生成gdb实例代码,下载后本地后,在确保环境配置无误的情况下,正常运行。

1、gdb文件目录

在生成目录,打开以gdb后缀结尾的文件夹,可以看到如下的文件(比较多,打开滚动条看更多)

2、 ArcMap验证

       使用ArcMap打开上述的gdb文件,验证文件是否可以正常打开,空间参考设置、属性设置、空间信息、属性别名是否已经正常写入等等。

 三、总结

        以上就是本文的主要内容,本文将深度讲解如何使用Java语言,基于GDAL进行图层的写入,设置属性表的字段中文别名,通过实例的方式进行讲解,最后使用ArcMap进行空间信息和属性信息的验证。实验表明,gdb文件空间参考设置正确,属性信息和空间信息设置完成,通过ArcMap可以正常打开。

来源地址:https://blog.csdn.net/yelangkingwuzuhu/article/details/128269992

--结束END--

本文标题: 基于GDAL的JAVA生成GDB文件实战

本文链接: https://www.lsjlt.com/news/422306.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作